Part 1
요약·해설
Issue·PR identifier를 commit에 연결하고 각 bisection step에서 west update 후 culprit를 수동 검증합니다.
commit ↔ issue
good · bad · culprit
west update · manual
Part 2
접을 수 있는 영어 원문 전체
영어 원문 전체 펼치기
A3EE945547FA21336428F481CABDE071F03E6D27831B95584FD9F1F0185D3C30
.. _bug_reporting:
Bug Reporting
##############
To maintain traceability and relation between proposals, changes, features, and
issues, it is recommended to cross-reference source code commits with the
relevant GitHub issues and vice versa.
Any changes that originate from a tracked feature or issue should contain a
reference to the feature by mentioning the corresponding issue or pull-request
identifiers.
At any time it should be possible to establish the origin of a change and the
reason behind it by following the references in the code.
Reporting a regression issue
****************************
It could happen that the issue being reported is identified as a regression,
as the use case is known to be working on earlier commit or release.
In this case, providing directly the guilty commit when submitting the bug
gains a lot of time in the eventual bug fixing.
To identify the commit causing the regression, several methods could be used,
but tree bisecting method is an efficient one that doesn't require deep code
expertise and can be used by every one.
For this, `git bisect`_ is the recommended tool.
Recommendations on the process:
* Run ``west update`` on each bisection step.
* Once the bisection is over and a culprit identified, verify manually the result.
.. _git bisect:
https://git-scm.com/docs/git-bisect
Part 3
한국어 전문 번역
Proposal, change, feature, issue 사이 traceability와 relation을 유지하려면 source-code commit에서 관련 GitHub issue를 참조하고 issue에서도 commit을 교차 참조하는 것을 권장합니다. Tracked feature나 issue에서 시작된 모든 change는 해당 issue 또는 pull-request identifier를 언급해 feature reference를 포함해야 합니다.
Code의 reference를 따라가면 언제든 change의 origin과 그 이유를 확인할 수 있어야 합니다.
Regression issue 보고
보고한 use case가 이전 commit 또는 release에서는 동작한 것으로 알려져 있다면 regression으로 분류될 수 있습니다. Bug를 제출할 때 guilty commit을 바로 제공하면 이후 bug fixing 시간을 크게 줄일 수 있습니다.
Regression을 만든 commit을 찾는 방법은 여러 가지지만 tree bisection은 깊은 code expertise 없이 누구나 사용할 수 있는 효율적인 방법입니다. 권장 tool은 git bisect입니다.
권장 process는 다음과 같습니다.
- Bisection의 각 step에서
west update를 실행합니다. - Bisection이 끝나 culprit를 찾으면 결과를 수동으로 검증합니다.
Source
출처
영어 원문에는 문단, 문서 지시문, 표, 코드, 코드 심벌, 경로를 그대로 보존했습니다.