해시 표시(#)를 사용하여 Git 커밋 메시지 시작
는 Git는다로시작선처을리다니합는으로 합니다.#
커밋할 때 주석 행으로 사용합니다.이것은 티켓 추적 시스템으로 작업하고 줄의 시작 부분에 티켓 번호를 쓰려고 할 때 매우 성가신 일입니다.
#123 salt hashed passwords
Git는 커밋 메시지에서 줄을 간단히 제거합니다.해시를 피하는 방법이 있습니까?나는 노력했다.\
그리고.!
하지만 아무 것도 소용이 없습니다.전공 앞의 #
보존되어 있기 때문에 그것도 문제에 대한 효과적인 해결책이 아닙니다.
은 이동은다일니다입부음의작의 입니다.git commit
의 기본 '정리' 동작입니다.다으로시작줄는을면으로 ,#
대체 정리 모드를 사용할 수 있습니다.
예.
git commit --cleanup=whitespace
이 작업을 수행할 경우 모든 작업을 제거할 수 있도록 주의해야 합니다.#
커밋에 표시하지 않을 행.
git1.8.2(2013년 2월) 이후에는 '와 다른 문자를 사용할 수 있습니다.#
커밋 메시지의 주석이 달린 줄에 대해 설명합니다.
이를 통해 '를 사용할 수 있습니다.#
버그 번호를 참조하십시오.
Git가 사용자에게 편집기의 메시지를 편집하도록 요청할 때 제공하는 다양한 "힌트" 행은 '로 주석 처리됩니다.
#
결석으로구성 변수를 사용하여 이를 사용자 지정할 수 있습니다.
#
다른 캐릭터로.
이론적으로, 당신은 다음과 같이 말할 수 있습니다.core.commentChar
2.x/2더 해질 것입니다( 3분기).git 2.0.x/2.1은 더 엄격합니다(2014년 3분기).
Nguyễn Thai Ngọc Duy()pclouds
의 commit 50b54fd를 참조하십시오.
구성: core.commentChar에 엄격합니다.
주석 문자열을 지원하지 않습니다(최소한 아직 지원하지 않음).또한 멀티바이트 문자 인코딩도 잘못 해석될 수 있습니다.
쉼표가 두 개인 테스트는 이를 위반하므로 업데이트됩니다.eff80a9(사용자 정의 "댓글 문자" 허용 - 2013-01-16)에 도입된 패치가 추가되었습니다.왜 그런 행동이 필요한지 저는 잘 모르겠습니다.
2은 Git 2.0.x/2.1(2014년 3분기)에 대한 합니다.core.commentChar
:
커밋 84c9dc2 참조
때
core.commentChar
는 "입니다.auto
는 ' 명문자로 '로합니다.#
기본값이지만 이미 준비된 메시지에 있는 경우 작은 부분 집합에서 다른 문자를 찾습니다.이렇게 하면 Git가 예기치 않게 일부 선을 제거하기 때문에 예상치 못한 현상을 방지할 수 있습니다.는 'Git는'식할만똑큼않습똑니다지하를인▁'▁enough▁to▁note니▁recognize▁smart▁not습▁'it'를 인식할 만큼 똑똑하지 .
#
사용자 지정 템플릿의 주석 문자로 사용하고 최종 주석 문자가 다른 경우 변환합니다.
커밋 메시지의 일부로 사용자 지정 템플릿의 '#' 행을 생각합니다.사용자 지정 템플릿과 함께 사용하지 마십시오.
"자동"의 후보 문자 목록은 다음과 같습니다.
# ; @ ! $ % ^ & | :
이는 다음과 같은 명령을 의미합니다.git commit -m '#1 fixed issue'
댓글 으로 'Char' 'Char'로됩니다.;
' 때문입니다.#
커밋 메시지에 사용되었습니다.
Tom Wright의 "해쉬 만들기 – Git commit 메시지에서 사용"을 참조하십시오.
내가 위에 링크한 스택 오버플로 답변은 또한 커밋 메시지에서 사용하는 문자에 따라 자동으로 주석 문자를 선택하는 Git의 기능을 언급합니다.
git config --global core.commentChar auto
좋죠?
안타깝게도 이 기능은 사용자가 설정한 커밋을 기준으로 설명 문자를 변경할 뿐, 커밋 기록을 사용하여 선택 사항을 알려주지는 않습니다.제가 보기에, 이것은 서투른 실행으로 인해 비틀거리는 큰 특징입니다.
인 기능인 것 .: 기 능 기 본 것 유 같 습 니 다 한 효 이 만 에 경 우 있 는 은 켜 적 으 로 져 니 다 습 같 ▁it ▁that ▁by ▁only 이 ▁feature ▁on : ▁like 것 ▁effective ▁were ▁seems
- 한 그룹의 사람들은 결과에 익숙하기 때문에 커밋에서 해시를 사용하는 것을 피할 것입니다.
- 다른 사람들(우리와 같은)은 기본 재배치가 필요할 때만 설명 문자를 변경해야 한다는 것을 인식할 것입니다.이러한 상황에서 원하는 동작을 트리거하기 위해 새 커밋을 추가하는 것은 의미가 없습니다.
- 세 번째 그룹의 사람들은 기본 주석 문자를 변경해야 한다는 것을 일찍부터 의식적으로 받아들이고 단순히 대안을 선택할 것입니다.
이 할 수 되면 아무도 할 수 없습니다.', 이 기 기 즉 본 사 용 수 있 다 않 니 습 아 도 되 지 을 사 이 움 능 도 무 상 실 으 값 옵 션 면 닌 할 아 으 이 로 ▁in ▁helps ▁virtually , - ▁available 이 ▁no one ▁feature 즉 ▁having ▁this ▁option ▁other ▁as ▁a ,
기본적으로 이 기능을 사용하면 사용자에게 아무런 해를 끼치지 않고 일부 사용자에게는 문제를 제거할 수 있기 때문에 왜 그렇지 않은지 알 수 없습니다.
Git은 유용성으로 유명하지 않지만, 사용 가능한 수정 프로그램을 가지고 있고 켜지 않는 것은 무료로 사용자 적대적으로 보입니다.
참고: Git 2.41(2023년 2분기)에는 다음이 추가되었습니다.
Kristoffer Haugsbakk LemmingAvalanche
()의 commit 3b3419 (2023년 3월 27일)를 참조하십시오.
(주니오 C 하마노에 의해 합병 -- -- 커밋 5c93cfd, 2023년 3월 31일)
사용자에게 ASCII 문자가 필요하다고
config
말합니다.사인 오프 바이: Kristoffer Haugsbakk
커밋 50b54fd("
config
에엄을 엄하게core.commentChar
2014-05-17, Git v2.1.0-rc0 -- 배치 #2에 나열된 병합) "멀티바이트 문자 인코딩도 잘못 해석될 수 있습니다" 및 실제로 멀티바이트 코드 포인트(비ASC)II)가 유효한 것으로 인정되지 않습니다.core.commentChar
.
이제 메시지는 다음과 같습니다.
core.commentChar should only be one ASCII character
^^^^^
여기에 대한 답변은 훌륭하고 상세하지만, 저와 같은 기트 초보자에게는 기트 구성 옵션을 사용자 지정하는 것이 그렇게 명확하지 않습니다.다음은 변경할 예입니다.#
;
주석 문자의 경우:
git config core.commentChar ";"
그게 당신이 해야 할 일입니다.
옵션 명줄을 할있수다니를 할 수 .-m
:
git commit -m "#123 fixed"
하지 않고 때 "commit "는 "commit message"이기 입니다).#
처음에는 코멘트를 작성했기 때문에 무시되었습니다.) Git을 통해 다음 작업을 수행할 수 있습니다.
Aborting commit due to empty commit message.
Could not amend commit after successfully picking 5e9159d9ce3a5c3c87a4fb7932fda4e53c7891db... 123 salt hashed passwords
This is most likely due to an empty commit message, or the pre-commit hook
failed. If the pre-commit hook failed, you may need to resolve the issue before
you are able to reword the commit.
You can amend the commit now, with
git commit --amend
Once you are satisfied with your changes, run
git rebase --continue
메시지만 수정하면 됩니다.
git commit --amend -m "#123 salt hashed passwords"
기본 재배치를 계속합니다.
git rebase --continue
git commit --cleanup=scissors
사용해야 합니다.2014.05.21 Git v2.0.0에 추가되었습니다.
git commit --help
--cleanup=<mode>
scissors
Same as whitespace, except that everything from (and including) the line
"# ------------------------ >8 ------------------------" is truncated if the message
is to be edited. "#" can be customized with core.commentChar.
문자 자 문 메 지 됩 하 니 다 면 만 기 하
전에직 #
charcar.
그리고나서git
하는 것을 하고 을코간는것중을지합니다주하로멘트라인▁stops다▁regarding니▁as중합지▁line▁the것.github
해시된 티켓 번호를 문제없이 사용할 수 있습니다.
vim
의 기본 구문 강조 표시는 색상을 주석형에서 내용형으로 변경하여 기능을 제안하기도 합니다.
내 모든 커밋은 다음으로 시작합니다.#issueNumber
그래서 나는 이 보일러 플레이트를 나의 것에 두었습니다.vim .git/hooks/commit-msg
:
NAME=$(git branch | grep '*' | sed 's/* //')
echo "$NAME"' '$(cat "$1") > "$1"
그래서 우리가 지점을 가지고 있다고 가정해 봅시다.#15
그리고 우리는 커밋 메시지를 만듭니다.add new awesome feature
는 이접근방최종커메같다다습니과음는지시가 될 것입니다.#15 add new awesome feature
.
티켓 번호에 다른 접두사를 사용합니다.또는 티켓 번호에 "Bug #42"와 같은 단어를 추가합니다.또는 줄에 단일 공백 문자를 추가합니다. 공백을 제거하려면 해당 공백에 커밋 후크를 추가할 수 있습니다.
저는 개인적으로 이런 종류의 커밋 메시지 조작을 후크에 의해 수행하지 않기를 원합니다. 왜냐하면 그것은 당신이 원하지 않을 때 트리거될 때 매우 짜증날 수 있기 때문입니다.가장 쉬운 해결책은 아마도 문제를 다시 생각하는 것입니다.
캐릭터의 되는데, 는 역사 확장 캐릭터입니다.
!
결석으로
사용할 수 있습니다.$
[싱글]로'
따옴표(Bash의 단일 따옴표 문자열에서 단일 따옴표 이스케이프):
$ git commit -m $'#228 update to a new version! margin of error is 33% | 33^*0.22;'
# commit message: #228 update to a new version! margin of error is 33% | 33^*0.22;
$ git commit -m $'docs!: new API reference for GPS horse navigation'
# commit message: docs!: new API reference for GPS horse navigation
경할우용 없이 사용할 $
그리고.'
하지만 그와 함께"
:
$ git commit -m "docs!: new API reference for GPS horse navigation"
bash: : unrecognized history modifier
와 함께 사용할 경우"
이스케이프 그고탈출리.\
(\
여전히 거기에 있을 것이거나 내가 뭔가 잘못하고 있었을 것입니다):
$ git commit -m "docs\!: new API reference for GPS horse navigation"
# commit message: docs\!: new API reference for GPS horse navigation
언급URL : https://stackoverflow.com/questions/2788092/start-a-git-commit-message-with-a-hashmark
'source' 카테고리의 다른 글
RegisterStartupScript와 RegisterClientScriptBlock의 차이점은 무엇입니까? (0) | 2023.05.01 |
---|---|
Swift에서 명령줄 인수에 액세스하는 방법은 무엇입니까? (0) | 2023.05.01 |
UIButton 제목 텍스트 색상 (0) | 2023.05.01 |
PowerShell을 사용하여 바로 가기를 만드는 방법 (0) | 2023.05.01 |
Excel 셀에서 선행 0의 자동 자르기를 방지하는 방법 (0) | 2023.05.01 |