GitNotes.2-12.md
본 문서는 Git Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.

Section 2.12: 커밋 하나의 내용 표시하기

git show 명령을 통해 하나의 커밋에 대한 정보를 확인할 수 있다

git show 48c83b3
git show 48c83b3690dfc7b0e622fd220f8f37c26a77c934

예제

commit 48c83b3690dfc7b0e622fd220f8f37c26a77c934 Author: Matt Clark <mrclark32493@gmail.com> 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" ));

[출처] https://books.goalkicker.com/GitBook/ (CC BY-SA)

반응형
GitNotes.2-11.md
본 문서는 Git Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.

Section 2.11: 로그에서 수정된 파일 정보 표시하기

git log --stat

예제:

commit 4ded994d7fc501451fa6e233361887a2365b91d1 Author: Manassés Souza <manasses.inatel@gmail.com> 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 <manasses.inatel@gmail.com> 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(+)

역주: -stat옵션 사용시 각 매 커밋마다 수정된 파일별로 몇줄의 코드가 추가/제거되었는지를 +,- 심볼을 이용하여 보여줍니다.

[출처] https://books.goalkicker.com/GitBook/ (CC BY-SA)

반응형
GitNotes.2-10.md
본 문서는 Git Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.

Section 2.10: 로그 목록에 수정 내용을 포함하여 조회하기

로그 목록 조회시 매 커밋마다 수정 내역을 포함시켜 출력하려면, -p 혹은 --patch 옵션을 사용한다.

git log --patch

예제 (Trello Scientist repository 에서 발췌)

$ git log -p commit 8ea1452aca481a837d9504f1b2c77ad013367d25 Author: Raymond Chou <info@raychou.io> 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 :

[출처] https://books.goalkicker.com/GitBook/ (CC BY-SA)

반응형
GitNotes.2-9.md
본 문서는 Git Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.

Section 2.9: 로그 필터링하기

git log --after '3 days ago'

특정 날짜를 파라미터로 줄 수도 있다:

git log --after 2016-05-01

날짜를 파라미터로 받는 다른 명령어나 옵션들과 마찬가지로, 날짜 서식에 GNU date 형식이 지원되어 날짜를 매우 유연하게 표현할 수 있다.

--after 옵션의 별칭 (alias) 는 --since 이다.

반대 케이스의 옵션 역시 지원한다: --before 혹은 --until 을 사용하라.

또한 다음과 같이 로그들을 작성자 기준으로 필터링할 수도 있다.

git log --author=author

[출처] https://books.goalkicker.com/GitBook/ (CC BY-SA)

반응형
GitNotes.2-8.md
본 문서는 Git Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.

Section 2.8: 파일 내에서 라인 수 기준으로 특정 범위에 해당하는 변경 로그 표시하기

$ git log -L 1,20:index.html commit 6a57fde739de66293231f6204cbd8b2feca3a869 Author: John Doe <john@doe.com> 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 명령어에 시작라인,끝라인:파일이름 형식으로 -L 옵션을 주면 주어진 파일이름 내에서 시작라인끝라인 사이의 모든 변경 로그를 표시해준다

[출처] https://books.goalkicker.com/GitBook/ (CC BY-SA)

반응형
GitNotes.2-7.md
본 문서는 Git Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.

Section 2.7: git log 내용 중 커밋 문자열 검색하기

문자열을 이용하여 git log 내용을 검색하려면 아래와 같이 입력한다:

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 이라는 문자열을 메시지에 포함하지 않는 모든 커밋들을 나열할 것이다.

[출처] https://books.goalkicker.com/GitBook/ (CC BY-SA)

반응형
GitNotes.2-6.md
본 문서는 Git Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.

Section 2.6: 커밋 목록을 작성자별로 그룹화하여 나열하기

git shortlog 명령어는 git log 의 결과를 작성자별로 그룹화하여 요약된 결과를 보여준다.

파라미터 없이 실행된 경우, 커미터별로 현재까지 작성된 모든 커밋들이 시간순으로 화면에 출력된다.

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

각 커밋들에 대한 설명은 생략하고 커밋 수만 표시하길 원한다면, 요약 (summary) 옵션을 이용한다:

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

커미터의 이름 기준이 아닌 커미터별 커밋 수 기준으로 정렬되어 표시되기를 원한다면, 순서 매기기(numbered) 옵션을 이용한다:

-n
--numbered

커미터 정보에 이메일 주소를 같이 표시하려면, 이메일 옵션을 이용한다:

-e
--email

커밋 메시지외에 추가적인 정보를 표시하기 위한 맞춤 서식 (custom format) 옵션 역시 사용이 가능하다:

--format

git log 명령어의 --format 옵션에 사용되는 서식을 동일하게 사용할 수 있다.

서식 관련 추가 정보는 "로그에 색상입히기" 챕터를 참고하라.

[출처] https://books.goalkicker.com/GitBook/ (CC BY-SA)

반응형
GitNotes.2-5.md
본 문서는 Git Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.

Section 2.5: 로그 검색하기

git log -S"#define SAMPLES"

위 명령어는 특정 문자열이나 주어진 정규표현식에 의해 매치되는 문자열이 추가 (addition) 되거나 제거 (removal) 된 내역을 검색한다.
이 예제의 경우에는 #define SAMPLES 문자열이 추가되거나 제거된 내역을 검색한다. 예를 들어:

+#define SAMPLES 100000

혹은

-#define SAMPLES 100000

과 같은 로그가 검색될 것이다

git log -G"#define SAMPLES"

위 명령어는 특정 문자열이나 주어진 정규표현식에 의해 매치되는 문자열에 연관된 변경 내역이 포함된 라인을 검색한다.

-#define SAMPLES 100000 +#define SAMPLES 100000000

[출처] https://books.goalkicker.com/GitBook/ (CC BY-SA)

반응형

+ Recent posts