커밋 메시지 없이 Git 커밋
커밋 메시지를 지정하지 않고 변경을 커밋하려면 어떻게 해야 합니까?기본적으로 필요한 이유는 무엇입니까?
git는 의미 있는 커밋 메시지를 제공하는 것이 우수한 개발 관행과 우수한 저장소 관리의 일부이기 때문에 일반적으로 비어 있지 않은 메시지를 요구합니다.커밋 메시지의 첫 줄은 git 내 모든 곳에서 사용됩니다. 자세한 내용은 "git 커밋 메시지에 대한 노트"를 참조하십시오.
Terminal.app을 열면,cd프로젝트 디렉토리로 이동합니다.git commit -am ''빈 커밋 메시지가 허용되지 않기 때문에 실패하는 것을 볼 수 있습니다.최신 버전의 git에는
--allow-empty-message최신 버전의 Xcode에 포함된 git 버전을 포함하는 명령줄 인수입니다.이렇게 하면 다음 명령을 사용하여 빈 메시지로 커밋할 수 있습니다.
git commit -a --allow-empty-message -m ''
이전 버전--allow-empty-message플래그, 당신은 그것을 사용해야 했습니다.commit-tree배관 명령.Git 책의 "Raw Git" 장에서 이 명령어를 사용하는 예를 볼 수 있습니다.
그리고 그것에 대한 별칭을 추가하면 훨씬 더 낫습니다. 그렇죠?
git config --global alias.nccommit 'commit -a --allow-empty-message -m ""'
이제 당신은 논평이 없기 때문에 nccommit, nc를 하고, 모든 것이 커밋되어야 합니다.
중요한 코드 업데이트 작업을 할 때 중간 체크포인트가 정말로 필요한 경우 다음을 수행할 수 있습니다.
git commit -am'.'
또는 더 짧습니다.
git commit -am.
메시지에 커밋을 추가합니다..
참고: git1.8.3.2(2013년 7월)부터 다음 명령(위에서 Jeremy W Sherman이 언급함)은 더 이상 편집기를 열지 않습니다.
git commit --allow-empty-message -m ''
커밋 25206778aac776fc6cc4887653fdae476c7a9b5a를 참조하십시오.
옵션과 함께 빈 메시지가 지정된 경우
-m편집기가 시작됩니다.
그것은 예상치 못한 불필요한 것입니다.
사용자가 메시지 문자열을 지정했는지 확인하기 위해 메시지 문자열의 길이를 사용하는 대신 옵션이 지정되었는지 직접 기억합니다.-m주어졌습니다.
git 2.9(2016년 6월)는 빈 메시지 동작을 개선합니다.
Adam Dinwoodie()me-and의 커밋 178e814(2016년 4월 6일)를 참조하십시오.
제프 킹()peff의 커밋 27014cb(2016년 4월 7일)를 참조하십시오.
(주니오 C 하마노에 의해 합병 -- 0709261, 2016년 4월 22일 커밋)
commit에서 제공한 빈 메시지를 무시하지 않습니다.-m ''
- "
git commit --amend -m '' --allow-empty-message이상하게 보일지라도 메시지가 전혀 없도록 커밋을 수정하기 위한 유효한 요청입니다.
의존를잘때에의 에.-m명령 줄에서, 우리는 결국 원래 커밋의 로그 메시지를 유지하게 되었습니다.- "
git commit -m "$msg" -F file의 여부는 거부되어야 합니다.$msg빈 문자열인지 아닌지는 몰라도 동일한 버그로 인해 거부되지 않았습니다.$msg비어 있습니다.- "
git -c template=file -m "$msg".$msg비어 있지만 템플릿 파일의 내용을 사용하지 않고 대신 사용했습니다.
--allow-empty-message -m '')-m "" 2 PowerShell의 Git 2.29.2에서 실패:
오류: 스위치 'm'에 값이 필요합니다.
(충분히 정확하게, 한쪽에는 백체크 표시가 있고 다른 쪽에는 인용문이 하나 있습니다.)
다음은 리눅스, PowerShell 및 명령 프롬프트에서 일관되게 작동합니다.
git commit --allow-empty-message --no-edit
그--no-edit비트는 편집기가 시작되지 않도록 방지하기 때문에 트릭을 수행합니다.
나는 이 양식이 빈 메시지를 강요하는 것보다 더 노골적이고 덜 촌스럽다고 생각합니다.-m ''.
Git에는 커밋이 있어야 주석을 달 수 있습니다. 그렇지 않으면 커밋을 수락하지 않습니다.
기본 커밋 메시지로 git를 사용하여 기본 템플릿을 구성하거나 --allow-empty-message 플래그를 조회할 수 있습니다.빈 커밋 메시지를 받아들이도록 git을 재구성할 수 있다고 생각합니다(그것은 좋은 생각이 아닙니다).일반적으로 각 커밋은 메시지에 의해 설명되는 약간의 작업이어야 합니다.
당신은 이것을 성취하기 위해 기트가 필요하지 않습니다.bash 기능을 창의적으로 사용하면 트릭이 잘 될 것입니다.메시지에 관심이 없으면 기본 메시지를 설정하고 잊어버리십시오.
function gitcom() {
git commit -m "my default commit message"
}
만약 당신이 정말 모험심을 느낀다면, 당신은 하나의 명령으로 추가하고, 커밋하고, 밀어낼 수 있습니다.
function gitzap() {
git add . && git commit -m "whatevs" && git push $1 $2
}
그런 다음 실행할 수 있는 것입니다.
gitzap origin master
더 깊이 들어가서 parse_git_branch를 사용하여 키 입력을 저장하거나 "origin"과 "master"의 공통 기본값을 설정할 수도 있습니다.
가장 간단한 해결책을 찾았습니다.
git commit -am'save'
그게 다야, 당신은 git commit 메시지 같은 것들을 다룰 것입니다.
당신은 심지어 그것을 더 간단하게 만들기 위해 그 표창을 bash나 다른 것들에 저장할 수 있습니다.
우리 팀원들은 항상 메시지를 작성하지만, 거의 아무도 그 메시지를 다시 보지 못할 것입니다.
커밋 메시지는 적어도 우리 팀에서는 시간을 죽이는 것이기 때문에 무시합니다.
개인 프로젝트에 다음과 같은 구성이 있습니다.
git config alias.auto 'commit -a -m "changes made from [device name]"'
그래야 내가 급할 때 나는 합니다.
git auto
git push
그리고 적어도 나는 그 약속이 어떤 장치에서 만들어졌는지 알고 있습니다.
몇 가지 다른 답변을 바탕으로 다음과 같은 결론을 얻었습니다.
git config --global alias.gromit '!git add --all && git commit --allow-empty-message -m ""'
.git add --all 새 파일을 , 또한새 동안는추하는-a기어들어가다.git commit그들을 내버려 둬.이 더 잘 생각합니다 :-) 에일리어스는 다음과 같습니다. :-)
미래의 자아여, 앞으로 닥칠 침묵하고, 빠르고, 위대한 약속들을 모두 용서하소서.
언급URL : https://stackoverflow.com/questions/6218199/git-commit-with-no-commit-message
'programing' 카테고리의 다른 글
| 파워쉘 안에서 키스트로크를 수행하는 방법은? (0) | 2023.09.08 |
|---|---|
| 메시지가 표시된 후 페이지 다시 로드, jQuery (0) | 2023.09.03 |
| mariadb: 업데이트에서 "IN" 폐쇄 쿼리 실행 (0) | 2023.09.03 |
| AVPlayer 개체를 재생할 준비가 된 시점 확인 (0) | 2023.09.03 |
| 자바스크립트에서 문자가 문자인지 확인하는 방법은? (0) | 2023.09.03 |