郵件論壇
開放原始碼專案最重要的工作場合,除git/svn等等提交程式碼的原始碼庫之外,就是用以輔助討論、回報bug、提交patch、公告事項的郵件論壇了。u-boot郵件論壇主要的討論群組可以從這裡註冊:https://lists.denx.de/listinfo/u-boot。以下按照頁面順序說明各選項功能。
查看歷史討論紀錄
如果你想要檢索過往討論紀錄,請查看mailing list archives: U-boot Archieves。
郵件論壇的歷史紀錄是按月打包,分成四種不同的視角排序,檢索過往的討論:「Thread」(討論串)、「Subject」(主題)、「Author」(作者)、「日期」。比較重要的是Thread(討論串)模式,討論串模式可以看出大量的郵件往來訊息中,主文和後續討論的脈絡。除了可以看到大家的意見,也能看到同一個功能的歷史演進。對於在大量訊息的郵件論壇中,瞭解某個議題的前後演變很有幫助。辨認是否是同一個討論串,通常靠Message-ID辨認。在後面的章節會提到,如果一個patch按照大家的討論前後改了好幾版,最好注意一下Message-ID的一致性。Email軟體和郵件論壇,才不會因為你用了錯誤的Message-ID,認為你的回文應該歸類在另外一個討論串,而讓其他人忽略(根本沒看到)你的回文,或者是新的patch。這會對提交patch和審核的時程多了不必要的延宕。有些3rd party的郵件論壇,也會蒐集歷史紀錄,他們對於Thread的呈現可能會更仔細。如果對一個主題的脈絡看得不是很清楚,也可以把信件的「Subject」(主題)丟到搜尋引擎去找一下,有時可以找到對Thread呈現比較清楚的網站。會有助於對這個議題有更清楚的瞭解。
寄信到u-boot郵件論壇
如網頁上提示,要張貼一封信件到郵件論壇,直接寄e-mail到[email protected]就可以了,這就是郵件論壇的e-mail地址。不過首先你必須訂閱(註冊)到這個郵件論壇,不然你的信件會被當成廣告信濾掉。如果你特別要跟某人討論事情,只寄到郵件論壇是不夠的,記得在To:或是Cc:加上其他開發者的e-mail。如果要私下討論某件事情,是可以單獨寄信給某人的。不過開放原始碼通常都是是公開透明的團體,任何提議或者改動,都得通過充分討論或是共識決議,所以務必還是記得在To:加上郵件論壇的地址。
訂閱郵件論壇
訂閱郵件論壇很簡單,填入你常用的(會用來提交改動)的e-mail地址即可。要輸入密碼的原因是日後的維護,你可以改變你的收件設定,而且避免會濫發廣告信的駭客,或者有毒e-mail的駭客對你的訂閱e-mail動什麼手腳。
訂閱的時候必須選擇每日的摘要模式,或者每封e-mail都要收。如果是摘要模式,郵件論壇系統會將一整天的討論,收集在一封信裡寄給你,每天只寄一次(訊息量大的時候可能會大略拆分成幾封信);反之就會將發到郵件論壇上的每一封信,都轉寄給你。積極參與專案開發、討論的時候,不能使用摘要模式訂閱。因為你必須針對每一封信件的單獨內容回信,才能在e-mail軟體或者郵件論壇,呈現正確的討論串脈絡,其他人也才能針對你的問題和意見,進行實質有意義的回覆。摘要模式收到的e-mail是無法挑出單獨幾篇回信的,這很困難;而且你可能也很容易摘要模式而漏掉其他人回覆給你的意見。
只有在你結束對這個專案的開發,想要暫時休息一下,仍然想保持興趣和關注,但是沒有打算參與的時候,才建議你切換成摘要模式收信。
按下Subscribe送出訂閱請求之後,過幾分鐘或者幾個小時,你就會收到確認信。通常只要按回信,然後再送出就能完成訂閱。請注意一下是不是被丟到垃圾信箱去了以致於沒有完成認證。因為這些郵件論壇的主機通常都位於美國或者歐洲,郵件的傳遞有時會需要花上不少的時間。不管你用哪一種電子郵件軟體收信,請注意一律要調整成「純文字模式」寫信和回信。郵件論壇無法處理RTF或者HTML,會導致無法排版錯亂,其他人無法閱讀你的信件。
調整郵件論壇的選項
如果你需要調整訂閱模式,或者取消訂閱,務必輸入當初訂閱的e-mail位址和密碼。
其他重要的注意事項
參與郵件論壇討論的時候,除了前面提到郵件軟體務必設定在「純文字模式」,提交patch和回信時務必注意Message-ID是否正確之外,下面再列出記點務必注意的事情。
- Do not top post. 這個非常非常重要。回信的時候務必回在他人訊息的後面,信件第一行不能是你要回覆的內容。這樣其他人才知道你在針對什麼內容回覆。至少要留一行前人的Hi 或者是XXX寫了什麼東西的內容。當然你可以做摘要,不在你回覆範圍內的內容也可以刪除,並且標記[deleted]提示。
- 如果需要用到表格或者流程圖做輔助說明,也不能使用HTML,務必使用標準的ASCII標點符號做圖;或者你得把圖檔以URL的方式存於一個不會消失的網路空間。ASCII圖就像是下面這樣,用ASCII字元畫出的解說圖。如果你閱讀RFC,或者Linux原始碼、文件,經常會看到這種ASCII圖做程式或流程概念的輔助說明。不同的字型每個字元的大小其實不一定是固定的。為了你畫的ASCII圖在別人收到的時候,不會因為字形顯示的問題而跑掉。閱讀信件和回信的時候使用固定大小的字型(monospaced font, also called a fixed-pitch, fixed-width, or non-proportional font)是很重要的,也可以避免縮排不一致的問題。因此必須在郵件軟體,還有編輯程式的編輯器(IDE或者編輯器,如ultra-editor或者notepad)、以及終端機視窗(Terminal)中將固定大小的字型設為預設,譬如Fixedsys、Consolas等等字型。
ASCII圖的範例。圖片來源:https://cdn-images-1.medium.com/max/1600/0\*\_k9SFaovWfJ-Ital.