2017-04-19 9 views
4

필자는 대화식을 리포지토리에서 자주 변경 (예 : 빈 줄 제거 또는 한 줄 편집)합니다. 대부분의 경우 이러한 변경 사항은 일부 동료 검토를 기반으로합니다. 처음에는`git rebase --continue`에 대한 편집기를 숨기는 방법?

나는 그런 내 변화를 할 다음 커밋 중 하나에 병합 충돌이있는 경우

git rebase --interactive 83bbeb27fcb1b5e164318fa17c55b7a38e5d3c9d~ 
# replace "pick" by "edit" on the first line 
# modify code 
git commit --all --amend --no-edit 
git rebase --continue 

, 나는 그것들을 해결하고이 작업을 수행 :

git rebase --continue 
# the commit message is shown, but does not have to be changed, so I just save and exit the editor 
git rebase --continue 
# the commit message is shown, but does not have to be changed, so I just save and exit the editor 
git rebase --continue 
# the commit message is shown, but does not have to be changed, so I just save and exit the editor 
... 

같은 일이 있나요 편집기를 피하는 git rebase --continue에 대한 --no-edit 인수 (git commit과 유사)?

+1

"true"와 같이 아무 것도없는 명령으로 원하는 편집기를 설정하십시오. 자식은 그것을 호출 할 것이고, 아무것도하지 않고 성공할 것이다. 자식은 기존의 커밋 메시지를 다시 사용할 것이다. 따라서 :'GIT_EDITOR = true git rebase --continue'. – torek

+0

@torek 에디터의 변경 사항을 * one * git 명령에만 적용 할 수 있습니까? 나는';'을 시도했는데 (예 :'GIT_EDITOR = true; git rebase --continue'), 작동하지 않았습니다. (나는 맥, btw를 사용하고있다.) – slartidan

+0

그것 (쉘을 통한 환경 설정'VAR = val cmd ...') * 하나의 명령과 그 자체가 실행하는 모든 것에 영향을 미친다. 여러 명령에 영향을 주려면 변수를 설정하고 "export"해야합니다. 대부분의 쉘에서'export VAR = value; command1; command2; ...' – torek

답변

2

; (예 : GIT_EDITOR=true;git rebase --continue)을 시도했지만 작동하지 않았습니다.
(내가 맥을 사용하고 있습니다)

모두 따르도록 명령에 대해, 현재 쉘 세션에서 GIT_EDITOR을 설정합니다
GIT_EDITOR=true; 

.
힘내 명령 갈래 부 쉘 환경 변수로 값을 전달 GIT_EDITOR

GIT_EDITOR=true git rebase --continue 

반대로.