이 안내서는 버그를 수정하여 PHP의 핵심에 기여하는 방법을 설명합니다. C 및 PHP 버전에 대한 기본적인 이해를 가정하여 워크 플로에 중점을 둡니다. 새로운 기능 제출물은이 기사의 범위를 벗어납니다.
주요 개념 :
수정은 가장 오래된 에 지원되는 영향을받는 버전을 대상으로해야합니다. 그런 다음 PHP 코어 개발자는 수정 사항을 최신 버전으로 합치게됩니다. 버그 수정 프로세스 :
여기에는 다음과 관련이 있습니다 : 버그 검증, 로컬 재생산, 테스트 생성, 디버깅, 수정 코딩, 변경 커밋 및 풀 요청 제출 (PR).빌드 및 재생산 : PHP를 빌드하고 스크립트를 실행하고 (예 : ) segfault를 재현하십시오 :
DatePeriod::getEndDate()
디버거 (lldb 또는 gdb)를 사용하여 근본 원인을 식별하십시오. 백트레이스는 문제가있는 코드를 정확히 찾아냅니다
테스트 ()를 다시 실행하십시오. 성공하면 변경 사항을 저 지르십시오.
make test
PR 제출 :
결론 :
PHP 코어 버그 수정은 기본 C 지식만을 요구하는 귀중한 기여입니다. 실용적인 프로그래밍 경험을 제공하고 PHP를 개선하는 데 도움이됩니다. 수천 개의 공개 버그 보고서가 포함되어 있으면 참여할 수있는 충분한 기회가 있습니다.
자주 묻는 질문 (FAQS) : php/php-src
(이들은 간결하게 요약되어 있음)
PHP 버그 추적 시스템을 사용하여 자세한 설명 및 테스트 사례를 제공합니다. 디버깅 : xdebug 또는 기타 디버깅 도구를 사용하십시오 공통 버그 : 구문, 논리 및 런타임 오류; 깨끗한 코드와 철저한 테스트를 통해 방지하십시오 비 코딩 기여 :
버그보고, 문서 작성/번역, 웹 사이트에 도움, 커뮤니티 참여. 테스트 :단위 테스트에 PhPunit을 사용하고 테스트 가능한 코드를 작성하십시오. PHP 내부 메일 링리스트 :
토론에 가입하고 참여하십시오 업데이트 상태 유지 :PHP 웹 사이트, 소셜 미디어, 뉴스 레터 및 커뮤니티 사용. 모범 사례 : 의미있는 이름, 주석, 일관된 스타일, 글로벌 피하기, 오류 처리, 입력 소독. >
기술 향상 :위 내용은 PHP에 기여 : PHP 코어에서 버그를 수정하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!