OpenCV PR 成功的收獲和感悟


 2018-09-12,第一次對OpenCV PR成功

https://github.com/opencv/opencv/pull/12206
《find innercircle of contour by using pointPolygonTest》

    

    
    總的來說,參加PR絕對是一件消耗時間精力(特別對於新手),同時收獲非常巨大的事情。 下面,分幾個方面對這次工作進行總結。
    一、價值和 收益
    1、獲得名譽、結交高手
    這是隱性的收獲,但卻是絕對重要的收獲。在anwseropencv上面的交流,在githup里面提交pr和issue,你所交流的這些人,都是這個方向最為優秀的工程師,和他們進行交流,能夠有很多收益。
    2、項目理解
    正是因為要向項目提交代碼,強迫自己必須從結構、細節等多個方面去理解這個項目,絕不是僅夠用就可以。這就使得你對項目的理解能夠更上層次,進一步地理解項目內容;
    更深入的理解,帶來的結果,顯而易見是在使用的時候能夠更得心應手。“你對你所做的了解的越多,則越能夠做得更好”    
    3、代碼規范;
    我們都說cleanCode,但是你寫出來的到底是不是cleanCode,只有一個籠統的概念。OpenCV通過自動構建,你必須按照它的規范來寫(嚴格到多一個空格,或者使用了tab而不是四個空格都不可以),這就要求你必須盡可能地用規范 代碼編寫,養成良好習慣。【附錄我會給出一個被拒絕的具體情況】
    同時,owner會提示你正確的代碼是怎樣的(因為他拒絕你總要給個合適理由),往往這些提示都是非常精准的。就是通過這個過程,能夠讓我寫出高質量的代碼;
    二 、成功pr的來源
    1、選題必須要恰當
    簡單的來說,絕對不能為了pr而去pr,而是要在自己的使用OpenCV的過程中,確實發現的問題、確實發現的更好的算法,那么通過pr就能夠幫助你將初步的想法變成一套正規的解決方案。
    2、代碼必須符合規范
    相比較邏輯錯誤,由於代碼規范問題導致的錯誤更容易成為你的絆腳石;
    3、把我節奏,注重效率
    pr最終還是和人的溝通,那么要注意管理員的活躍時間,以及和他們進行有理有節的“斗爭”。
      三 、關鍵的工具
    1、github desktop
    2、www.github.com
    3、buildboot等自動化工具,要首先讓代碼在本地能夠通過包括“代碼格式”的審核,然后再上傳上去。
    
 
    PR,特別是對OpenCV這樣的偉大項目的PR,應該說非常有價值意義。值得投入時間進行研究,盡快提高PR成功的可能。
 
   p.s
opencv的pr是自動編譯的,如果編譯不通過,肯定不會被merge,首先要過的就是merge這關
為了穩定,opencv不允許warning,這也是為了編寫高質量代碼
像這種warning,可能平時寫程序的時候,完全不會在意,但是build就不通過。這樣對代碼質量提出更高要求。
只要告訴我哪里錯了,就沒有問題。     
 
語言習慣錯誤
 
歷史版本問題
 
 
之前的紅的好像過去了
空格都能看出來,厲害
 
 
 
這個時候,管理員介入了,出現了更多錯誤
 
 
 
 






免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM