→ TonyQ:用這種 tool 旨在爆炸時可以有前一個板本可以追,不是在增加 09/19 01:28
→ TonyQ:開發效率...把程式碼切割清楚跟工具沒有關係,是 Team work 09/19 01:29
→ TonyQ:本來就該有的方法論,如果沒有這種工具又需要頻繁修改同樣幾 09/19 01:29
→ TonyQ:個檔案(ex.設定檔、語系檔),只會死得更快... 09/19 01:29
→ erspicu:我也是認為備份才是重點 不過很多人是想拿它來當協同創作 09/19 01:32
→ TonyQ:其實你仔細想想,那些 conflict 只是透過這個機制才浮上檯面 09/19 01:32
→ TonyQ:,某個角鍍上是好事,比起他們改了之後才發現雙方檔案都被改 09/19 01:32
→ TonyQ:。那時候死傷一定更慘重。 09/19 01:33
→ TonyQ:只要有兩個人以上同時編輯同一份code base,就一定會有衝突 09/19 01:33
→ TonyQ:,有個機制上衝突浮上檯面其實不是"增加成本",而是降低溝通 09/19 01:33
→ TonyQ:成本。這是我的看法。 09/19 01:34
→ TonyQ:當然你說,那我專案都切成一個人作不要有衝突不就好了,現實 09/19 01:34
→ TonyQ:是,就算只有一個人,只要 workspace 有兩個以上還是會自己 09/19 01:34
→ TonyQ:跟自己打架...ex. production vs localhost 09/19 01:34
→ TonyQ:只是自己不知不覺中吸收掉這些成本所以沒有浮上檯面而已 09/19 01:35
推 mgtsai:若有兩人以上開發同一模組是常態,其實可以考慮 branch 09/19 01:35
→ mgtsai:平常各自開發時在自己所擁有的 branch 上開發 09/19 01:36
→ TonyQ:要看conflict 的類型..像語系檔這種東西 用什麼都很難躲. XD 09/19 01:37
→ mgtsai:再律定特定的時間點或周期進行 branch merge 09/19 01:37
→ TonyQ:只能靠切 bundle 來盡量避免 conflict 讓大家編輯的語系盡量 09/19 01:37
→ TonyQ:錯開。 09/19 01:37
→ mgtsai:當 merge 時,兩個要一起坐下來解 conflict 09/19 01:37
→ TonyQ:如果說各自功能單元蠻獨立的 method 之類的,切 branch 就很 09/19 01:38
→ TonyQ:有效。 09/19 01:38
→ mgtsai:其實切 branch 是為了平常時大家可以分別作業,不用互卡 09/19 01:39
→ mgtsai:merge 時再把會 conflict 的地方一次處理掉 09/19 01:40
→ mgtsai:畢竟解 merge conflict 所佔的時間百分比不會太大 09/19 01:41
→ mgtsai:在進行merge工作時把相關PG都叫進會議室一起解conflict 09/19 01:42
→ mgtsai:順便複習 pair (triple/quadruple/quintuple) programming 09/19 01:48
→ TonyQ:解一個檔案的一個 conflict 不花什麼時間,但是解五十個檔案 09/19 10:51
→ TonyQ:的五百個conflict 就很難說了。XD 要看什麼樣的 conflict。 09/19 10:51
推 mgtsai:能累積到五十個檔案的conflict大概至少有一兩個月沒merge 09/19 10:57
→ mgtsai:那就縮短 merge cycle 吧,隔太久沒 merge 對大家都是災難 09/19 10:59
→ mgtsai:無論使用什麼仙丹都無解 09/19 11:00
推 andymai:確實切割功能、分清權責、實做前的協調都能盡可能的減少事 09/19 12:59
→ andymai:後conflict的發生~而且為什麼不是一早就update~下班前comm 09/19 13:00
→ andymai:it前解conflict?每天都該保持程式碼的一致性~不是嗎? 09/19 13:01
→ bbcust:這根本不是工具的問題 而是使用工具的人的問題吧 09/19 13:39
→ bbcust:怎麼可能每個project都一個人沒有team work 09/19 13:40
→ iincho:這篇真的是超神奇的經典..XD 09/19 21:38
→ dou0228:看到備份兩個字, 我笑了 09/19 23:05
推 carlcarl:人的問題++ 09/20 02:21