背景
我們平常在進行項目開發時,一般都會把代碼上傳至代碼托管平台上友善管理和維護。目前大家使用的托管平台最多的還是Github,國内外還有一些比較知名的代碼托管平台,比如Gitlab、BitBucket,碼雲和碼市等。
但我們在多人合作開發下,經常碰到的最頭疼的問題是,其他開發者在交接給我們一個項目時隻是對項目目前現有的功能簡單的描述了下,我們在後續疊代功能時突然發現連最基本的項目如何運作都沒有給我們交代,當時心中一萬隻那個什麼馬奔騰而過,隻能去檢視package.json的scripts,自己意會了。
那麼問題來了,我們在交接一個項目時,如何保證項目能快速完整地傳遞給基友,從此過上無憂無慮的生活呢?答案是我們隻需要甩給他一份标準規範的README。
規範的README需要哪些内容
我們通過一張截圖一起來看看一份簡單的README規範都有哪些内容:
image1
上面的readme規範模闆在我們feflow的README規範裡可以看到
那麼我們一起來探讨下,一份規範完整的README規範都應該有哪些内容呢?
- 項目描述
- 如何運作
- 業務介紹
- 項目備注
每一項都有哪些作用?
- 項目描述
需要說明我們的項目名,項目功能簡述,代碼倉庫位址,以及該項目的第一負責人。誰交接給我們的項目,誰就是該項目的第一負責人。
- 如何運作
i. 開發環境配置。一般是我們需要的一些運作環境配置。
ii. 開發&釋出 指令。我們怎麼通過指令開啟本地開發,以及建構釋出。
iii. 代理配置。如果我們的項目在本地開發時需要用到一些代理工具,例如fiddler或whistle等,我們需要列出代理的配置項。最好是直接導出一個代理配置的檔案,放在項目下
iv. 釋出。如果我們有用到一些釋出平台,最好貼上項目的釋出子產品和釋出單,減少我們釋出的時間成本。
v. 錯誤告警及監控。相信我們平常都會對線上的項目部署錯誤告警和監控日志的服務,友善我們及時排查現網問題,這裡我們可以加入項目的一些監控屬性ID
vi. 接口API。這裡我們需要貼入項目中拉去的背景接口位址以及描述,還有我們的接口負責人,當背景服務異常,可以直接聯系到背景同學。
vii . 資料上報。我們在平常項目裡都有加入一些資料上報,給産品同學統計業務資料用,這裡我們最好闡述下都有哪些資料的上報。如果上報出問題,産品妹子找過來,我們不至于是一臉懵逼。
- 業務介紹
對于前端來說,我們一個項目可能不止一個頁面,那麼我們需要給出以下資訊:
i. 業務入口位址及管道連結 即我們整個項目的入口頁面,或者比較重要的頁面位址。一般入口頁面,我們可能會在多個管道進行投放,那麼需要列出所有的管道連結
ii. 各頁面及描述 列出我們項目内的所有頁面資訊,比如下面這樣:
頁面目錄 | 頁面描述 | 頁面連結 | 參數描述 |
---|---|---|---|
index | 首頁 | 無 |
- 項目備注 項目中需要告訴其他開發者一些關鍵資訊,比如我們頁面打包建構,需要注意哪些問題等等,這些資訊雖然不是必須的,但是可以幫助其他開發者降低開發的風險成本。
最後
上面是我們一個規範的README所需的一些資訊和内容,加粗内容是我認為README裡的一些必需資訊,大家也可以在此基礎上針對自己項目實際的開發場景來擴充一些規範資訊。
騰訊IVWEB團隊的工程化解決方案feflow已經開源:Github首頁:https://github.com/feflow/feflow
如果對您的團隊或者項目有幫助,請給個Star支援一下哈~