假設我將一些新功能添加到現有的C模塊(它可以是任何語言,但我們將使用C作爲示例)。假設模塊是二叉搜索樹,我想添加三個新函數:preOrder(),postOrder()和inOrder(),每個函數遍歷樹(不同地)並在每個節點上打印數據。我們還要說這些函數都依賴於一個新的依賴關係,稱之爲libprettyprint。在單獨的提交中添加依賴項? (最佳實踐)
要將新的依賴項添加到項目中,我必須將#include行添加到模塊實現(.c文件),並編輯一些Makefile規則。
我將把我的3個新函數中的每個函數放在不同的提交中,這樣他們可以很容易地被接受,更改上游的礦石被拒絕。但至少有兩種不同的方式來處理新的依賴關係:
方法一: 我會添加#include,更改makefile,並編寫我的第一個函數。然後我會承諾。然後我會寫另外兩個函數,並分別執行其中的每一個。 (總共3次)
方式二: 我可以做一個非常小的提交,只需#include和更改後的Makefile,然後在三個單獨的提交中提交三個函數。 (總共4次)
對我來說方式一更糟,因爲如果項目維護人員/我的老闆拒絕了第一次提交但接受了其他兩次,他們將刪除#include和編輯後的Makefile,另外兩個提交將無法編譯。方式二解決了這個問題。
我的問題是,在現實世界中,總是使用方式二是值得額外的努力?還是隻是使提交日誌和浪費時間複雜化?
嗯,你知道嗎?你的問題不是真正的SCM依賴*?!隨時拒絕我的復仇 – 2012-04-01 05:56:14
不,感謝,這是有道理的 – brianmwaters 2012-04-01 18:01:38