Git - gitconfig / committer / author

markyang92·2021년 4월 23일
2

git

목록 보기
1/14

설정 .gitconfig

위치별 .gitconfigDescriptioncommand
/etc/gitconfig시스템의 모든 사용자와 모든 저장소에 적용$ git config --system 옵션으로 설정한 것
~/.gitconfig
~/.config/git/config
$USER의 사용자와 저장소에 적용$ git config --global 옵션으로 설정한 것
git_repo/.git/configrepo 하나만 local 적용$ git config --local 옵션으로 설정한 것
  • 우선 순위
    • 3 > 2 > 1 : localglobal 옵션보다 우선

global, local 설정

$ git config --global user.name mark.yang
$ git config --global user.email pllpokko@alumni.kaist.ac.kr
  • 위 명령은 ${HOME}/.gitconfig에 저장된다.
# ~/.gitconfig
[user]
    name = mark.yang
    email = pllpokko@alumni.kaist.ac.kr
  • global로 설정한 것은 ${HOME}/.gitconfig에 설정된다.!!

  • local 설정은 특정 git repo에만 적용된다.
    • git_repo/.git/config에 저장된다.
$ git config --local user.name "John Doe"
$ git config --local user.email pllpokko@example.com

git 기본 편집기 변경

$ git config --global core.editor vim

git 명령 결과 에디터로 가지 않게 설정

  • 자꾸 결과가 새로운 에디터로 떠서 매우 귀찮으면
$ git config --global pager.branch false

하면 결과가 터미널에 뜬다.


git config --list: 설정 확인

$ git config --list
user.name=John Doe
user.email=johndoe@example.com
color.status=auto
color.branch=auto
color.interactive=auto
color.diff=auto
...
$ git config user.name
John Doe

~/.gitconfig

mirror 설정, 외부 파일 inlcude


commit의 구성요소

  • Tree: Git 내부적으로 쓰이는 오브젝트 파일, Git에서 자동 생성하며 파일의 구조를 알려주는 역할
  • Author: 코드를 처음에 만든 사람, 처음에 코드를 짜고 Commit한 사람
  • Committer: 가장 최근에 커밋을 수정한 사람

  • Author, Committer는 당연히 다를 수 있다.

author 수정

  • author: 코드를 처음에 만든 사람, 처음에 코드를 짜고 커밋한 사람

방법 1. $ git commit --amend --author="작성자명 <email주소>"

$ git commit --amend --author="작성자명 <email주소>"


방법 2. $ git commit --amend로 들어가서 수정

$ git commit --amend
git 작성자 변경 테스트(얘가 잘못되었어)
  
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
#
# Author:    madplay <itsmetaeng@gmail.com>
#
# interactive rebase in progress; onto 80be237
# Last command done (1 command done):
#    e b813011 git 작성자 변경 테스트(얘가 잘못되었어)
# Next command to do (1 remaining command):
#    pick 10aa749 [포스팅] 이진 탐색 트리
# You are currently splitting a commit while rebasing branch 'master' on '80be237'.
#
# Changes to be committed:
#       modified:   pom.xml
#

committer 수정

  • committer: 가장 최근에 커밋을 수정한 사람
$ git config --global user.name "committer name"
$ git config --global user.email "e-mail"
$ git commit --amend --reset-author
  • git config --list에서 조회되는 이름/email이 committer임!

commit 메세지 여러 줄 작성

$ git commit -m"message line 1
message line 2
message line 3"
  • 그냥 "만 쌍으로 안쓰면 계속 write할 수 있음
$ git commit -m"Hello\
world"

-> "Helloworld" 로 인식됨

profile
pllpokko@alumni.kaist.ac.kr

0개의 댓글