두 명령에 인수와 동일한 파일 이름을 제공하십시오.

두 명령에 인수와 동일한 파일 이름을 제공하십시오.

Git 충돌의 경우 현재 다음을 수행할 수 있습니다.

git diff path/to/some/file.txt

...차이점을 살펴본 후 일반적으로 다음을 수행하고 싶습니다.

git checkout --theirs path/to/some/file.txt && git add path/to/some/file.txt

매번 두 개의 경로를 편집하는 것은 힘들기 때문에 다음을 수행할 수 있기를 바랍니다.

git checkout --theirs <ref> && git add path/to/some/file.txt

file.txt를 나타 <ref>냅니다.

Bash에서 이를 수행할 수 있는 방법이 있습니까?

답변1

방법은 다양합니다.

당신은 그것을 사용할 수 있습니다역사적 확장(t)csh, bash 또는 zsh에서. !$이전 명령줄의 마지막 인수로 확장됩니다.

git checkout --theirs !$ && git add !$

Bash, ksh 및 zsh에는 변수가 있습니다.$_쉘이 실행한 마지막 단순 명령의 마지막 인수를 저장합니다.

git checkout --theirs "$_" && git add "$_"

Bash와 zsh 에는 이전 명령줄의 마지막 인수를 삽입하는 키보드 단축키 Alt+ .또는 가 있습니다.ESC .

git checkout --그들의 Alt+ .&& git add Alt+.

함수에 채울 수 있습니다.

git_add_theirs () {
  if [ "$#" -eq 0 ]; then set -- "$_"; fi
  git checkout --theirs -- "$@" && git add -- "$@"
}

아니면 독립형 스크립트 add-theirs = git_add_theirs로 만들어서 ~/.gitconfig.

관련 정보