HOWTO · Git

하나의 명령에서 git add, git commit 및 git push

Git에서 하나의 명령으로 파일을 추가, 커밋 및 푸시할 수 있습니다.

이 문서에서는 하나의 명령으로 원격 저장소에 파일을 추가, 커밋 및 푸시하기 위해 사용할 수 있는 두 가지 방법에 대해 설명합니다. 단일 파일에서 작은 변경을 수행하는 경우 변경 사항을 원격 저장소에 게시하는 3단계 프로세스를 따라야 합니다.

다행스럽게도 변경 사항을 원격 저장소에 추가, 커밋 및 푸시하는 명령을 만들 수 있습니다.

하나의 명령에서 git add, git commit 및 git push

두 가지 방법이 있습니다.

  1. bash 함수를 생성합니다.
  2. 별칭을 만듭니다.

Bash 함수 만들기

로컬 변경 사항을 원격 저장소에 추가, 커밋 및 푸시하는 Bash 함수를 만들 수 있습니다. 이 함수는 .bashrc 파일에 저장해야 합니다.

.bashrc 파일은 단순히 터미널 세션의 구성을 정의하는 쉘 스크립트입니다.

이 파일은 일반적으로 홈 디렉토리에 있습니다. 홈 디렉토리는 Git Bash를 시작할 때 서 있는 디렉토리입니다.

.bashrc 파일이 없는 경우 Bash를 실행하고 아래 명령을 사용하여 생성하십시오.

$ touch ~/.bashrc

.gitconfig 파일과 마찬가지로 .bashrc는 숨겨진 파일입니다. .bashrc 파일에 함수를 추가하려면 아래 명령을 실행하십시오.

$ notepad ~/.bashrc

이 명령은 메모장에서 파일을 열며 아래와 같은 기능을 추가할 수 있습니다.

function acp() {
    git add .
    git commit -m "$1"
    git push origin HEAD
}

git commit"$1"을 사용하면 acp 명령을 실행할 때 사용자 지정 커밋 메시지를 제공할 수 있습니다.

함수에 이름을 지정할 수 있습니다. 파일을 저장하고 아래 명령을 실행하여 기능을 활성화합니다.

$ source ~/.bashrc

최신 Git 버전은 --login으로 시작합니다. 이 경우 Git은 bash_profile 파일만 읽습니다.

이러한 이유로 Git은 .bashrc 파일을 인식하지 못합니다. 이를 해결하려면 아래 명령을 실행하십시오.

$ if [ -f ~/.bashrc ]; then . ~/.bashrc; fi

Git은 이제 .bashrc 파일을 읽습니다. 아래와 같이 acp를 사용하여 하나의 명령으로 원격에 변경 사항을 추가, 커밋 및 푸시할 수 있습니다.

$ acp "Update README.md"

변경 사항을 원격에 추가, 커밋 및 푸시합니다.

하나의 명령으로 커밋 추가 및 푸시

참고: 기능에 할당한 이름을 사용하십시오. 예를 들어 함수 이름을 Lazygit로 지정한 경우 다음을 실행합니다.

$ Lazygit "Update README.md"

별칭 만들기

아래 그림과 같이 원격 저장소에 변경 사항을 추가, 커밋 및 푸시하는 별칭을 만들 수 있습니다.

$ git config --global alias.lazygit '!f() { git add -A && git commit -m "$@" && git push origin HEAD; }; f'

별칭에 아무 이름이나 지정할 수 있습니다. git commit"$@"를 사용하면 명령줄에서 별칭을 사용할 때 사용자 지정 커밋 메시지를 제공할 수 있습니다.

별칭을 lazygit로 지정했으므로 다음을 실행합니다.

$ git lazygit "Update LICENSE.md"

![별칭을 사용하여 하나의 명령에 커밋 및 푸시 추가](</img/Git/alias.jpg>를 사용하여 하나의 명령에 커밋 및 푸시 추가

.bashrc 파일에 Bash 함수를 생성하거나 별칭을 생성하여 하나의 명령으로 추가, 커밋 및 푸시할 수 있습니다. 사용자 지정 커밋 메시지를 추가하는 옵션으로 둘 다 생성하는 방법을 살펴보았습니다.