2016-10-04 1 views
0

내 자식 커밋 메시지에 이미 여러 줄을 추가하는 방법을 알고 있습니다.Git Commit Message에서 줄 바꿈 추가를 어떻게 취소합니까?

git commit -m " 
>Text here... 
>[Accidental Enter Key] 

그러나, 내가 실수로 입력 버튼을 무엇을 누를 경우 나는 이전 라인에 다시 가고 싶어 :

내가 사용하고? 그런 방법이 있습니까?

+0

당신은 무엇으로 메시지를 편집하고 있습니까? –

+0

@AdamSchiavone Git Bash를 사용 중입니다. – Fritz

+0

개인적으로, 나에게 이런 일이 생길 때, 나는 그걸로 가서 'git commit --amend' 메시지를 수정한다. – Mchl

답변

3

GNU Readline와 편집은 시간에 엉뚱한입니다. 실수로 실수 한 경우 Bash의 인용 문자열 중간에을 입력하고 Ctrl-C를 누릅니다. 명령 줄에서 마지막 부분 인 을 입력하십시오.은 기록에 보존됩니다. 가장 마지막 줄을 잃을뿐입니다. 마지막으로 입력 한 내용은 모두 입니다.을 입력하십시오. Ctrl-C 다음에 회선을 호출하여 편집 할 수 있습니다. 이번에는 커서를 따옴표로 다시 이동할 수 있습니다. 원하지 않는 여러 줄 부분을 백 스페이스하여 한 줄로 연결할 수 있습니다. 위쪽 화살표 이제

$ echo "abc 
> oops hit Enter, didn't mean to 
> oops, I did it again!^C 

:

$ echo "abc 
oops hit Enter, didn't mean to_ <- cursor is here (lost the last line) 
^ 
`- no > characters here now, and you can move the cursor left 
    to just before the "oops" and hit backspace to merge it with 
    the "abc. 

Readline와 이런 식으로 너무 일관성이 이유는 분명하지 않다 다음 > 라인을 계속하는 모드,하지만 일반 편집이 왜 리콜 할 때 ; 어쩌면이 방법을 구성하는 방법이 있습니다. 우울함 > 어리 석다. 나는 초보자를 위해서 존재한다고 생각한다 : > 프롬프트는 "이봐, 너는 불균형 한 인용문이나 무언가를 가지고있어서 더 많은 입력을 요구하고있다"는 것을 나타내는 크고 분명한 신호이다. 그래도 사용자가 적어도 >의 백 스페이스를 허용하지 않아도됩니다. 당신은 언제나 작은 백 스페이스 키가없는 키보드를 얻을, (가) 마지막으로

$ git commit --amend -m "corect message" # oops 
$ git commit --amend -m "correc message" # darn 
$ git commit --amend -m "correct message!" 

을 즉시 다음, 의도하지 않은 메시지와 함께 커밋 완료 할 수 있습니다이 상황에서 어떤 경우

, 바로 아래에있는 거대한 Enter 키! 그 바보 같은 키보드가 우연히 Enter를 누르는 주된 이유입니다. 정확하게 잘못된 것을 수정하기 위해 백 스페이스를 사용하려는 경우입니다. 페달이 브레이크 바로 옆에 있었다면 상상해보십시오!

+1

나는 Ctrl + C로 첫 번째 제안을 시도했지만 힘내 자들의 모든 것을 취소했다. 그러나, 고마워요! 나는 정말로 그것에 대해 조심해야한다고 생각합니다. 이봐 요, 이전 줄로 돌아가는 더 쉬운 방법이 있었으면합니다. 어쨌든 귀하의 답변과 제안에 진심으로 감사드립니다. 건배, 카즈! – Fritz

0

그냥

git commit 

를 사용하고는 커밋 메시지의 텍스트 편집기를 (일반적으로 VIM) 열립니다.

Reference

+0

귀하의 제안에 유의하십시오. Git Bash에서 이미 원했던 것을 얻기위한 구체적인 방법은 없다고 생각합니다. – Fritz