git : 메시지를 입력하는 동안 중단 커밋
나는 최선을 다하고 있습니다. 커밋 메시지를 vim에 입력했습니다. 나는 이제 무언가를 바꿔야한다는 것을 기억했다. 나는 내가 원하는 것을 성취 할 수있는 다른 옵션이 있다는 것을 알고 있지만 커밋을 중단 할 수있는 방법이 있는지 알고 싶지만 지금까지 입력 한 커밋 메시지를 저장하고 싶습니다.
예. 커밋 메시지를 다른 파일 ( :w /some/other/path.txt
)에 씁니다 . 그런 다음 저장하지 않고 편집기를 종료하십시오 ( :q!
). 이전에 파일을 원래 경로에 저장 한 경우 모든 것을 삭제하고 빈 파일을 먼저 작성하십시오 (빈 커밋 메시지는 커밋을 중단합니다).
이제 "실제로"커밋 할 준비가되면 대체 경로에 저장 한 메시지 파일을 사용하십시오.
또는 커밋 메시지를 vim의 버퍼 중 하나에 복사하십시오.
그것의 가치는 것을주의 정말로에서이 작업을 수행 할 필요가 없습니다은 : commit --amend
당신이 만들어졌다 후 쉬운 해결책은 당신이있어 무엇을 확약하고 밀어 전에 문제를 해결 생산하는 것입니다 그래서이 커밋 변경 할 수 있습니다. 커밋이 손상된 상태에서 커밋을 완료하고 reset HEAD~
(작업 복사본이 커밋 이전에 있었던 상태로 재설정) 작업 복사본을 수정 한 다음 commit -a -c HEAD@{1}
이전 커밋 메시지를 사용할 수 있습니다.
에디터가 에러 코드로 빠져 나갈 수 있다면-Git은 커밋을 중단합니다. VIM을 사용할 때 다음을 입력하십시오.
:cq
0이 아닌 오류 코드로 종료하고 커밋을 중단합니다.
커밋 메시지를 작성하기 위해 vim을 연 경우 #으로 시작하지 않는 행을 삭제하면 git이 커밋을 중단합니다.
Aborting commit due to empty commit message.
커밋을 중단 할 수 있지만 나중에 다른 방법으로 커밋 을 수정 하는 방법이 있습니다. 현재 작업을 커밋 한 다음 원하는대로 추가로 변경 git add
한 다음 실행하십시오 git commit --amend
. 커밋 메시지 편집기로 다시 돌아가고 저장하면 추가 변경 사항과 새 커밋 메시지가 포함되도록 커밋이 수정됩니다.
네 가능합니다. 커밋하려면 편집기가 커밋 메시지를 파일에 쓰고 .git/COMMIT_EDITMSG
0 상태 코드로 종료해야합니다.
따라서 VI / VIM을 사용하는 경우 다음을 수행 할 수 있습니다.
- 커밋 메시지를 작성하십시오.
- 커밋 메시지를 저장하십시오
:w
(기본적으로 현재 내용을에 저장합니다.git/COMMIT_EDITMSG
) - 오류로 편집기를 종료하십시오.
:cq
- 스테이징 영역에 파일을 추가 / 제거 할 수도 있습니다.
- 기존 커밋 메시지 편집을 계속하십시오.
git commit -eF .git/COMMIT_MESSAGE
는 -F /path/to/file
/ 파일에서 / 경로 주어진 내용 /를 사용하여 편집기를 채 웁니다. 그러나 기본적으로 편집을-e
위해 플래그를 추가로 제공하지 않으면 커밋을 즉시 수행합니다 .
@ bdonlan 답변은이 질문에 좋지만 더 나은 솔루션을 원할 수있는 상황을 지적 할 것입니다.
마지막 커밋에 변경 사항을 추가하고 싶다고 가정 해보십시오. 따라서 @bdolan이 제안한대로하십시오.
git add files
git commit --amend
새 메시지를 작성하는 동안 해당 커밋에 해당 파일을 추가하는 것을 후회한다고 상상해보십시오. 문제는 이미 저장된 커밋 메시지와 함께 붙어 편집기를 종료하면 (저장 여부에 관계없이) 마지막 변경 사항에 변경 사항을 추가합니다. 이러한 동작 이전의 시점으로 되돌리려 면 마지막 커밋 을 분할 해야합니다. 피하고 싶을 것입니다.
트릭은 편집기로 줄을 시작 #
하거나 줄이없는 동안 편집기를 저장하고 종료하는 것입니다. 종료하면 다음 메시지가 표시됩니다.
Aborting commit due to empty commit message.
그리고 당신은 마지막 커밋을 전혀 바꾸지 않았습니다.
참고 URL : https://stackoverflow.com/questions/9146907/git-abort-commit-in-the-middle-of-typing-message
'IT story' 카테고리의 다른 글
POSIX sh에 문자열에 다른 문자열이 포함되어 있는지 어떻게 알 수 있습니까? (0) | 2020.07.18 |
---|---|
MySQL에있는 테이블 수를 계산하는 쿼리 (0) | 2020.07.18 |
HttpURLConnection과 함께 POST를 사용하여 파일 보내기 (0) | 2020.07.18 |
리스트 이해의 람다 함수 (0) | 2020.07.18 |
안드로이드에서 화면 크기마다 dimens.xml을 정의하는 방법은 무엇입니까? (0) | 2020.07.18 |