수색…


통사론

  • 자식 로그 [옵션] [수정 버전] [[-] 경로 ...]

매개 변수

매개 변수 설명
-q, --quiet 조용하게, diff 출력을 억제합니다.
--출처 커밋 소스를 보여줍니다.
--use-mailmap 메일 맵 파일 사용 (커밋 사용자에 대한 사용자 정보 변경)
- 장식 [= ...] 옵션 꾸미기
- L <n, m : file> 파일의 특정 행 범위에 대한 로그를 1부터 세며 표시합니다. n 행에서 시작하여 m 행으로 이동합니다. diff도 보여줍니다.
--show-signature 서명 된 커밋의 서명 표시
-i, --regexp-ignore-case 대소 문자에 관계없이 정규식 제한 패턴 일치

비고

참고 문헌과 최신 문서 : git-log 공식 문서

"Regular"Git Log

git log

작성자와 해시와 관련된 모든 커밋을 표시합니다. 이것은 커밋마다 여러 행에 걸쳐 표시됩니다. (커밋마다 한 줄을 보여주고 싶다면 onelineing보세요 ). q 키를 사용하여 로그를 종료하십시오.

디폴트로, 인자없이, git log는 그 저장소에서 만들어진 커밋을 시간순으로 역순으로 나열합니다 - 즉, 가장 최근의 커밋이 먼저 표시됩니다. 보시다시피이 명령은 SHA-1 체크섬, 작성자 이름 및 전자 메일, 작성 날짜 및 커밋 메시지로 각 커밋을 나열합니다. - 출처

예 ( 무료 코드 캠프 저장소에서) :

commit 87ef97f59e2a2f4dc425982f76f14a57d0900bcf
Merge: e50ff0d eb8b729
Author: Brian <[email protected]>
Date:   Thu Mar 24 15:52:07 2016 -0700

    Merge pull request #7724 from BKinahan/fix/where-art-thou
    
    Fix 'its' typo in Where Art Thou description

commit eb8b7298d516ea20a4aadb9797c7b6fd5af27ea5
Author: BKinahan <[email protected]>
Date:   Thu Mar 24 21:11:36 2016 +0000

    Fix 'its' typo in Where Art Thou description

commit e50ff0d249705f41f55cd435f317dcfd02590ee7
Merge: 6b01875 2652d04
Author: Mrugesh Mohapatra <[email protected]>
Date:   Thu Mar 24 14:26:04 2016 +0530

    Merge pull request #7718 from deathsythe47/fix/unnecessary-comma
    
    Remove unnecessary comma from CONTRIBUTING.md

마지막으로 명령을 제한하려면 n 단순히 매개 변수를 전달할 수 있습니다 로그 커밋합니다. 예를 들어, 마지막 2 커밋 로그를 나열하려면

git log -2 

온라인 로그

git log --oneline

해시의 첫 번째 부분과 커밋 메시지 만 가진 모든 커밋을 표시합니다. 는 AS 각각은, 한 줄에있을 것입니다 커밋 oneline 플래그가 제안합니다.

oneline 옵션은 각 커밋을 한 줄에 출력하므로 많은 커밋을 볼 때 유용합니다. - 출처

예제 (다른 코드의 코드 섹션과 동일한 Free Code Camp 저장소에서) :

87ef97f Merge pull request #7724 from BKinahan/fix/where-art-thou
eb8b729 Fix 'its' typo in Where Art Thou description
e50ff0d Merge pull request #7718 from deathsythe47/fix/unnecessary-comma
2652d04 Remove unnecessary comma from CONTRIBUTING.md
6b01875 Merge pull request #7667 from zerkms/patch-1
766f088 Fixed assignment operator terminology
d1e2468 Merge pull request #7690 from BKinahan/fix/unsubscribe-crash
bed9de2 Merge pull request #7657 from Rafase282/fix/

당신은 당신이 마지막으로 명령을 제한하려면 n 단순히 매개 변수를 전달할 수 있습니다 로그 커밋합니다. 예를 들어, 마지막 2 커밋 로그를 나열하려면

git log -2 --oneline

더 예쁘다 로그

예쁘고 그래프와 같은 구조로 로그를 보려면 다음을 사용하십시오.

git log --decorate --oneline --graph

샘플 출력 :

* e0c1cea (HEAD -> maint, tag: v2.9.3, origin/maint) Git 2.9.3
*   9b601ea Merge branch 'jk/difftool-in-subdir' into maint
|\  
| * 32b8c58 difftool: use Git::* functions instead of passing around state
| * 98f917e difftool: avoid $GIT_DIR and $GIT_WORK_TREE
| * 9ec26e7 difftool: fix argument handling in subdirs
* |   f4fd627 Merge branch 'jk/reset-ident-time-per-commit' into maint
...

꽤 큰 명령이므로 다음과 같이 별칭을 지정할 수 있습니다.

git config --global alias.lol "log --decorate --oneline --graph"

별칭 버전을 사용하려면 다음을 수행하십시오.

# history of current branch :
git lol

# combined history of active branch (HEAD), develop and origin/master branches :
git lol HEAD develop origin/master

# combined history of everything in your repo :
git lol --all

변경 사항을 인라인으로 기록

변경 사항이있는 로그를 보려면 -p 또는 --patch 옵션을 사용하십시오.

git log --patch

예제 ( Trello Scientist 저장소에서)

ommit 8ea1452aca481a837d9504f1b2c77ad013367d25
Author: Raymond Chou <[email protected]>
Date:   Wed Mar 2 10:35:25 2016 -0800

    fix readme error link

diff --git a/README.md b/README.md
index 1120a00..9bef0ce 100644
--- a/README.md
+++ b/README.md
@@ -134,7 +134,7 @@ the control function threw, but *after* testing the other functions and readying
 the logging. The criteria for matching errors is based on the constructor and
 message.

-You can find this full example at [examples/errors.js](examples/error.js).
+You can find this full example at [examples/errors.js](examples/errors.js).

 ## Asynchronous behaviors


commit d3178a22716cc35b6a2bdd679a7ec24bc8c63ffa
:

로그 검색

git log -S"#define SAMPLES"

REGEXP가 제공 한 특정 문자열 또는 문자열 일치 항목추가 또는 제거 를 검색합니다. 이 경우 우리는 #define SAMPLES 문자열 추가 / 제거를 찾고 있습니다. 예 :

+#define SAMPLES  100000

또는

-#define SAMPLES  100000

git log -G"#define SAMPLES"

지정된 문자열 또는 일치하는 문자열을 포함하는 행의 변경 사항 을 검색하여 REGEXP를 제공합니다. 예 :

-#define SAMPLES  100000
+#define SAMPLES  100000000

저자 이름별로 그룹화 된 모든 기고 목록보기

git shortlog 는 작성자별로 git log 및 groups를 요약합니다.

매개 변수를 지정하지 않으면, 커미터마다 작성된 모든 커밋 목록이 시간순으로 표시됩니다.

$ git shortlog
Committer 1 (<number_of_commits>):
    Commit Message 1
    Commit Message 2
    ...
Committer 2 (<number_of_commits>):
    Commit Message 1
    Commit Message 2
    ...

커밋 수를보고 커밋 설명을 숨기려면 요약 옵션을 전달하십시오.

-s

--summary

$ git shortlog -s
<number_of_commits> Committer 1
<number_of_commits> Committer 2

커미터 이름별로 알파벳 순으로 출력하지 않고 커밋 수로 출력을 정렬하려면 다음과 같이 번호 매기기 옵션을 전달하십시오.

-n

--numbered


커미터의 전자 메일을 추가하려면 전자 메일 옵션을 추가하십시오.

-e

--email


커밋 제목 이외의 정보를 표시하려면 사용자 정의 형식 옵션을 제공 할 수도 있습니다.

--format

이것은 git log--format 옵션으로 허용되는 모든 문자열 일 수 있습니다.

이에 대한 자세한 내용은 위의 색상 로그를 참조하십시오.

로그 필터링

git log --after '3 days ago'

특정 날짜도 작동합니다.

git log --after 2016-05-01

date 매개 변수를 허용하는 다른 명령 및 플래그와 마찬가지로 허용되는 날짜 형식은 GNU 날짜에 의해 지원됩니다 (매우 유연함).

--after 의 별명은 --since 입니다.

깃발은 그 반대도 존재한다 : - --before 과 - --until .

author 별로 로그를 필터링 할 수도 있습니다. 예

git log --author=author

파일 내의 라인 범위 기록

$ git log -L 1,20:index.html
commit 6a57fde739de66293231f6204cbd8b2feca3a869
Author: John Doe <[email protected]>
Date:   Tue Mar 22 16:33:42 2016 -0500

    commit message

diff --git a/index.html b/index.html
--- a/index.html
+++ b/index.html
@@ -1,17 +1,20 @@
 <!DOCTYPE HTML>
 <html>
-       <head>
-        <meta charset="utf-8">
+
+<head>
+    <meta charset="utf-8">
     <meta http-equiv="X-UA-Compatible" content="IE=edge">
     <meta name="viewport" content="width=device-width, initial-scale=1">

로그 색상 화

git log --graph --pretty=format:'%C(red)%h%Creset -%C(yellow)%d%Creset %s %C(green)(%cr) %C(yellow)<%an>%Creset'

format 옵션을 사용하면 자체 로그 출력 형식을 지정할 수 있습니다.

매개 변수 세부
%C(color_name) 옵션은 그 뒤에 나오는 출력을 색칠합니다.
%h 또는 % H 커밋 해시를 줄임 (완전한 해시에 % H 사용)
%Creset 기본 터미널 색상으로 색상을 재설정합니다.
%d 참조 이름
%s 제목 [커밋 메시지]
%cr 커미터 날짜, 현재 날짜 기준
%an 저자 이름

커밋 이후 커미터 이름과 시간을 보여주는 한 줄

tree = log --oneline --decorate --source --pretty=format:'"%Cblue %h %Cgreen %ar %Cblue %an %C(yellow) %d %Creset %s"'  --all --graph 

*    40554ac  3 months ago  Alexander Zolotov    Merge pull request #95 from gmandnepr/external_plugins
|\  
| *  e509f61  3 months ago  Ievgen Degtiarenko    Documenting new property
| *  46d4cb6  3 months ago  Ievgen Degtiarenko    Running idea with external plugins
| *  6253da4  3 months ago  Ievgen Degtiarenko    Resolve external plugin classes
| *  9fdb4e7  3 months ago  Ievgen Degtiarenko    Keep original artifact name as this may be important for intellij
| *  22e82e4  3 months ago  Ievgen Degtiarenko    Declaring external plugin in intellij section
|/  
*  bc3d2cb  3 months ago  Alexander Zolotov    Ignore DTD in plugin.xml

두 지점 사이의 힘내 로그

git log master..foo 에있는 커밋이 표시됩니다 foo 하지에 master . 분기 이후에 추가 한 것을 보는데 유용합니다!

커밋 된 파일을 보여주는 로그

git log --stat

예:

commit 4ded994d7fc501451fa6e233361887a2365b91d1
Author: Manassés Souza <[email protected]>
Date:   Mon Jun 6 21:32:30 2016 -0300

    MercadoLibre java-sdk dependency

 mltracking-poc/.gitignore |  1 +
 mltracking-poc/pom.xml    | 14 ++++++++++++--
 2 files changed, 13 insertions(+), 2 deletions(-)

commit 506fff56190f75bc051248770fb0bcd976e3f9a5
Author: Manassés Souza <[email protected]>
Date:   Sat Jun 4 12:35:16 2016 -0300

    [manasses] generated by SpringBoot initializr

 .gitignore                                                                            |  42 ++++++++++++
 mltracking-poc/mvnw                                                                   | 233 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 mltracking-poc/mvnw.cmd                                                               | 145 +++++++++++++++++++++++++++++++++++++++
 mltracking-poc/pom.xml                                                                |  74 ++++++++++++++++++++
 mltracking-poc/src/main/java/br/com/mls/mltracking/MltrackingPocApplication.java      |  12 ++++
 mltracking-poc/src/main/resources/application.properties                              |   0
 mltracking-poc/src/test/java/br/com/mls/mltracking/MltrackingPocApplicationTests.java |  18 +++++
 7 files changed, 524 insertions(+)

단일 커밋의 내용 표시

git show 사용하면 단일 커밋을 볼 수 있습니다.

git show 48c83b3
git show 48c83b3690dfc7b0e622fd220f8f37c26a77c934

commit 48c83b3690dfc7b0e622fd220f8f37c26a77c934
Author: Matt Clark <[email protected]>
Date:   Wed May 4 18:26:40 2016 -0400

    The commit message will be shown here.

diff --git a/src/main/java/org/jdm/api/jenkins/BuildStatus.java b/src/main/java/org/jdm/api/jenkins/BuildStatus.java
index 0b57e4a..fa8e6a5 100755
--- a/src/main/java/org/jdm/api/jenkins/BuildStatus.java
+++ b/src/main/java/org/jdm/api/jenkins/BuildStatus.java
@@ -50,7 +50,7 @@ public enum BuildStatus {

                        colorMap.put(BuildStatus.UNSTABLE, Color.decode( "#FFFF55" ));
-                       colorMap.put(BuildStatus.SUCCESS,  Color.decode( "#55FF55" ));
+                       colorMap.put(BuildStatus.SUCCESS,  Color.decode( "#33CC33" ));
                        colorMap.put(BuildStatus.BUILDING, Color.decode( "#5555FF" ));

git log에서 커밋 문자열 검색 중

로그에서 일부 문자열을 사용하여 git 로그 검색 :

git log [options] --grep "search_string"

예:

git log --all --grep "removed file"

모든 브랜치의 모든 로그 에서 removed file 문자열을 검색합니다.


git 2.4+부터는 --invert-grep 옵션을 사용하여 검색을 뒤집을 수 있습니다.

예:

git log --grep="add file" --invert-grep

add file 포함되지 않은 모든 커밋을 표시 add file .



Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow