Code Ownership

Ownership is measured by how many commits each author made to each file in the current tree. It highlights bus-factor risk (files only one person has ever touched) and where knowledge is concentrated. The bus factor is the smallest number of people who are, between them, primary owner of more than half of the files.

Files Tracked
27,902
in the current tree
Bus Factor
34
34 authors are primary owner of 14,048 of 27,902 files
Single-Owner Files
14,077
50.5% of tracked files
Contributors
1,650
authors who changed files

Bus factor risk — single-owner files

Files only one author has ever changed. The more a file has changed, the more knowledge is at risk if that person leaves.

FileSole ownerCommits
test/unittest/core/pipeline/right_mouse_mapping_test_ng.cppLeo_Mei20
adapter/ohos/entrance/listener/ressched_event_listener.cppfeng546_20
advanced_ui_component/progressbuttonv2/source/progressbuttonv2.etsx0048422018
advanced_ui_component_static/assembled_advanced_ui_component/@ohos.arkui.advanced.DatePickerComponent.etsluoying_ace_admin15
advanced_ui_component/datepickercomponent/interfaces/datepickercomponent.jsluoying_ace_admin13
advanced_ui_component/datepickercomponent/source/date_picker_component.etsluoying_ace_admin13
examples/StrengthenTest/entry/src/main/ets/pages/Image002Test.etsjunhg13
examples/ScrollableComponentTest/entry/src/main/cpp/components/list/List1.hzcdqs13
advanced_ui_component/progressbuttonv2/interfaces/progressbuttonv2.jsx0048422013
frameworks/core/components_ng/pattern/smart_layout/engine/smart_layout_constraints.cppryan563012
Table: the 100 most-changed of 14,077 single-owner files
FileSole ownerCommits
test/unittest/core/pipeline/right_mouse_mapping_test_ng.cppLeo_Mei20
adapter/ohos/entrance/listener/ressched_event_listener.cppfeng546_20
advanced_ui_component/progressbuttonv2/source/progressbuttonv2.etsx0048422018
advanced_ui_component_static/assembled_advanced_ui_component/@ohos.arkui.advanced.DatePickerComponent.etsluoying_ace_admin15
advanced_ui_component/datepickercomponent/interfaces/datepickercomponent.jsluoying_ace_admin13
advanced_ui_component/datepickercomponent/source/date_picker_component.etsluoying_ace_admin13
examples/StrengthenTest/entry/src/main/ets/pages/Image002Test.etsjunhg13
examples/ScrollableComponentTest/entry/src/main/cpp/components/list/List1.hzcdqs13
advanced_ui_component/progressbuttonv2/interfaces/progressbuttonv2.jsx0048422013
frameworks/core/components_ng/pattern/smart_layout/engine/smart_layout_constraints.cppryan563012
frameworks/core/components_ng/pattern/smart_layout/engine/smart_layout_node.cppryan563010
test/unittest/core/pattern/container_reader/container_reader_test_ng.cppsong-song-song10
test/unittest/frameworks/base/ressched/taihang_optimizer_test.cppfeng546_10
frameworks/core/common/recorder/event_controller.hw0089187310
frameworks/core/components_ng/pattern/hyperlink/bridge/arkts_native_hyperlink_bridge.hwangxiuxiu9
frameworks/core/components_ng/pattern/smart_layout/engine/smart_layout_constraints.hryan56309
frameworks/core/components_ng/pattern/canvas/bridge/arkts_native_canvas_bridge.cppchendongqi9
examples/components/entry/src/ohosTest/ets/test/InformationDisplay/GaugeBootcamp.test.etstangbiteng9
frameworks/core/components_ng/pattern/scroll/inner/scroll_bar_2d.hTianer Zhou9
frameworks/core/components_ng/pattern/scroll/inner/scroll_bar_2d_painter.hTianer Zhou9
test/unittest/core/pattern/grid/irregular/irregular_matrices.hTianer Zhou9
test/unittest/capi/utils/page_text_capi_test.cppl009165188
test/unittest/core/pattern/overlay/overlay_manager_testfive_ng.cppsunziyuan8
examples/Menu/entry/src/main/ets/pages/Examples/MenuTestLevel0_10.etssunziyuan8
frameworks/core/components_ng/pattern/rich_editor/rich_editor_scroll_controller.cppzzc199901278
test/unittest/core/pattern/smart_layout/smart_layout_constraints_test.cppryan56308
frameworks/core/components_ng/pattern/smart_layout/engine/smart_layout_node.hryan56308
frameworks/core/components_ng/pattern/data_panel/bridge/arkts_native_data_panel_bridge.cppchendongqi8
docs/kb/components/container/grid.mdjiangdayuan8
docs/kb/components/container/navigation.mdjiangdayuan8
examples/ScrollableComponentTest/entry/src/main/cpp/components/list/examples/List.cppzcdqs8
frameworks/core/components_ng/pattern/smart_layout/engine/smart_layout_engine_impl.hryan56307
frameworks/core/components_ng/pattern/smart_layout/engine/smart_layout_engine_interface.hryan56307
frameworks/core/components_ng/pattern/grid_col/bridge/arkts_native_grid_col_bridge.cppchendongqi7
frameworks/core/components_ng/manager/scroll_placeholder/scroll_placeholder_manager.hguozejun7
test/unittest/core/manager/scroll_placeholder_manager_test_ng.cppguozejun7
examples/ScrollableComponentTest/entry/src/main/cpp/components/component.cppzcdqs7
test/unittest/adapter/ohos/entrance/listener/ressched_event_listener_test.cppfeng546_7
test/unittest/capi/accessors/checkbox_content_modifier_accessor_test.cppNikolay Pisanov7
frameworks/core/components_ng/pattern/stage/force_split/parallel_page_pattern.hzhangdw5216
frameworks/core/components_ng/base/page_text_json.hl009165186
examples/Menu/entry/src/main/ets/pages/Examples/BindMenu_IsShow.etssunziyuan6
frameworks/core/components_ng/pattern/hyperlink/bridge/hyperlink_model_impl.cppwangxiuxiu6
test/unittest/core/pattern/smart_layout/smart_layout_node_test.cppryan56306
frameworks/core/components_ng/pattern/gauge/bridge/arkts_native_gauge_bridge.cppchendongqi6
frameworks/core/components_ng/pattern/blank/bridge/arkts_native_blank_bridge.cppchendongqi6
docs/kb/components/container/grid-col.mdjiangdayuan6
docs/kb/components/container/grid-row.mdjiangdayuan6
examples/Select/entry/src/main/resources/base/element/string.jsonzhourenfeng6
frameworks/core/components_ng/pattern/lazy_waterflow_layout/lazy_water_flow_layout_pattern.hfuhanfeng6
test/unittest/core/pattern/lazy_waterflow_layout/lazy_water_flow_layout_header_footer_test.cppfuhanfeng6
examples/StrengthenTest/entry/src/main/ets/pages/Layout001Test.etsjunhg6
frameworks/core/components_ng/manager/scroll_placeholder/scroll_placeholder_manager.cppguozejun6
examples/ScrollableComponentTest/entry/src/main/cpp/components/component.hzcdqs6
examples/Layout/entry/src/main/ets/pages/Index.etsLichtschein6
examples/Layout/entry/src/main/resources/base/profile/main_pages.jsonLichtschein6
test/mock/frameworks/base/ressched/mock_taihang_optimizer.cppfeng546_6
adapter/ohos/entrance/listener/ressched_event_listener.hfeng546_6
frameworks/bridge/declarative_frontend/state_mgmt/src/lib/sdk/observed_util.tsyuxiaofei96
test/unittest/capi/modifiers/text_modifier_test2.cppNikolay Pisanov6
frameworks/bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_linear_indicator.hzhangquanchao6
test/unittest/core/pattern/grid/irregular/irregular_matrics.cppTianer Zhou6
interfaces/inner_api/ace/ui_event_func.hw008918736
frameworks/core/components_ng/pattern/web/touch_event_listener.cppZhaoPengfei6
frameworks/core/components_ng/pattern/common_text/counter_host.hyao_qiaoming15
frameworks/core/components_ng/pattern/progress/bridge/progress_dynamic_modifier.cpptangfei06165
interfaces/native/ui_json_wrapper.cppl009165185
test/unittest/adapter/ohos/osal/feature_manager/feature_manager_test.cppl009165185
frameworks/core/components_ng/render/adapter/detached_rs_node_manager.cppwangchensu5
examples/Menu/entry/src/main/ets/pages/Examples/BindContextMenu_LongPress.etssunziyuan5
examples/Menu/entry/src/main/ets/pages/Examples/BindContextMenu_RightClick.etssunziyuan5
interfaces/inner_api/drawable_descriptor/drawable_bridge.cppliyujie43@huawei.com5
frameworks/core/components_ng/pattern/hyperlink/bridge/hyperlink_dynamic_module.hwangxiuxiu5
frameworks/core/components_ng/pattern/smart_layout/engine/smart_layout_context.hryan56305
docs/kb/components/media/image-animator.mdjiangdayuan5
docs/kb/components/container/grid-item.mdjiangdayuan5
examples/Select/entry/src/main/resources/base/element/color.jsonzhourenfeng5
examples/ScrollableComponentTest/entry/src/main/ets/pages/waterflow/CAPI/WaterFlowInfiniteScrollingEarly.etsfuhanfeng5
examples/ScrollableComponentTest/entry/src/main/ets/pages/waterflow/bindController/WaterFlowDestroyDeclare.etsfuhanfeng5
examples/ScrollableComponentStatic/entry/src/main/ets/pages/list/ListScroller/ListBindListScroller.etsfuhanfeng5
examples/ScrollableComponentStatic/entry/src/main/ets/pages/list/ListDeclare.etsfuhanfeng5
examples/ScrollableComponentStatic/entry/src/main/ets/pages/scroll/ScrollDeclare.etsfuhanfeng5
frameworks/core/components_ng/pattern/lazy_waterflow_layout/lazy_water_flow_layout_info.hfuhanfeng5
examples/StrengthenTest/build-profile.json5junhg5
test/unittest/core/pattern/grid/grid_content_clip_test.cpptomkl1235
examples/Wearable/entry/src/main/ets/pages/Index.etschenzhiz5
examples/Wearable/entry/src/main/resources/base/profile/main_pages.jsonchenzhiz5
examples/ScrollableComponentTest/entry/src/main/cpp/components/waterflow/WaterFlow1.hzcdqs5
examples/ScrollableComponentTest/entry/src/main/cpp/components/refresh/Refresh1.hzcdqs5
advanced_ui_component/composetitlebarv2/interfaces/composetitlebarv2.jszzuhui5
advanced_ui_component/composetitlebarv2/source/composetitlebarv2.etszzuhui5
advanced_ui_component/editabletitlebarv2/source/editabletitlebarv2.etszzuhui5
advanced_ui_component/treeviewv2/interfaces/treeviewv2.jszzuhui5
advanced_ui_component/treeviewv2/source/treeviewv2.etszzuhui5
frameworks/bridge/declarative_frontend/engine/functions/js_navigation_function.cpptsj_20205
test/unittest/capi/modifiers/scrollable_common_method_modifier_test.cppNikolay Pisanov5
test/unittest/capi/modifiers/scrollable_common_method_modifier_test_2.cppNikolay Pisanov5
test/unittest/capi/modifiers/search_modifier_resources_test.cppNikolay Pisanov5
frameworks/bridge/declarative_frontend/ark_component/components/arkradio.jspsl-0075
test/unittest/capi/accessors/sub_tab_bar_style_accessor_test.cppmaxuchu5

Ownership by author

Primary owner = the author with the most commits to a file. Solely owned = files only that author has touched.

AuthorFiles ownedSolely ownedFiles touched
wangweiyuan2,4472,3653,312
zhanghang9575272,199
wangxiuxiu8934182,435
liuhui936846491,015
Demon-QING510497716
lushi5022502,448
yuanlin944982831,356
zhanghan48563513
Nikolay Pisanov4522121,470
xuqinfeng14351291,019
zenix_zxy412272890
zhongjianfei391561,145
guozejun3471231,603
hct95328264728
huangxx1995324283546
zhourenfeng304197588
royce-ls303241873
chenjiafeng-opneharmony278223581
zhoulianhai271202429
chendongqi2661871,102
Lichtschein254229441
kangchongtao251102,846
chijunwen251221788
jiangdayuan24396715
liyujie43@huawei.com2391311,011

Showing top 25 of 1650 contributors.

Most shared files

Files touched by the most people — shared code where changes are most likely to need coordination.

FileContributorsPrimary ownerOwner share
frameworks/core/pipeline_ng/pipeline_context.cpp311tzcurtain3.0%
adapter/ohos/entrance/ui_content_impl.cpp280fangzhiyuan13.3%
frameworks/bridge/declarative_frontend/jsview/js_view_abstract.cpp249fangzhiyuan12.6%
frameworks/bridge/declarative_frontend/engine/jsEnumStyle.js241mayaolll3.4%
frameworks/core/components_ng/base/frame_node.cpp240Yun-xier4.4%
frameworks/core/interfaces/arkoala/arkoala_api.h235wangxiuxiu7.1%
frameworks/core/components_ng/render/adapter/rosen_render_context.cpp235hehongyang37.8%
frameworks/core/pipeline_ng/pipeline_context.h226yan-shuifeng3.3%
test/unittest/BUILD.gn223Tianer Zhou5.1%
adapter/ohos/entrance/ace_container.cpp222fangzhiyuan17.0%
frameworks/core/components_ng/base/frame_node.h198yan-shuifeng4.2%
frameworks/core/components_ng/base/view_abstract.cpp189hehongyang34.7%
frameworks/core/components_ng/pattern/web/web_pattern.cpp186tengfan6.6%
frameworks/core/components_ng/pattern/BUILD.gn183Tianer Zhou5.2%
frameworks/bridge/declarative_frontend/engine/jsi/nativeModule/arkts_native_api_impl_bridge.cpp182Xing Guang9.8%
frameworks/core/components/web/resource/web_delegate.cpp178xiongjun_gitee114.5%
frameworks/bridge/declarative_frontend/BUILD.gn177quguiren7.0%
frameworks/core/components_ng/pattern/overlay/overlay_manager.cpp171chenwenchang6.1%
frameworks/core/BUILD.gn168sunfei7.0%
frameworks/core/components_ng/render/adapter/rosen_render_context.h164hehongyang37.4%