推 abccbaandy: 這就跟隕石開發一樣阿,不應該,但大家都習慣了 03/20 13:24
→ abccbaandy: 只要沒天兵直接蓋過去就好了 03/20 13:24
→ loadingN: 自己解conflict啊 03/20 13:25
推 brucetu: 那些被你搬動的code就是比你早commit啊 那就是既有程式碼 03/20 13:48
→ brucetu: 了 三分鐘前才commit進去的code 跟上個月寫好commit進去 03/20 13:48
→ brucetu: 的code有什麼分別嗎 03/20 13:48
→ acgotaku: 就很常見吧 誰晚進去 誰就rebase 測試寫好不要影響對方 03/20 13:54
→ y2468101216: 你說的就是svn的概念,就是因為不好用才慢慢改成 git 03/20 13:57
→ y2468101216: 你能想像為了改一個檔案等一個星期的痛苦嗎? 03/20 13:58
推 leakleak: 很正常吧 站會聊一聊不就解決了 03/20 13:59
推 WaterLengend: 那就代表那段邏輯還沒完善而已啊 03/20 14:33
推 as23041248: 為何會很常遇到呀,分工通常是每個人會開發不一樣 c 03/20 14:45
→ as23041248: omponent ,還是剛好都一直碰到共用的地方? 03/20 14:45
推 surimodo: 猜拳決定誰處理衝突 03/20 14:59
→ touurtn: 單元測試覆蓋到就會安心點 03/20 15:08
→ leolarrel: 理論上然樓主說的算對,但現實上,跟你合作的人,程式碼品 03/20 15:33
→ leolarrel: 質就是無法預期.要是他又是你客戶公司的正職RD,那你能 03/20 15:34
→ leolarrel: 怎樣? 跟你的客戶PM抱怨說你們家誰誰誰寫code很髒?? 03/20 15:35
→ leolarrel: 或是你自己開公司當最高的甲方 03/20 15:35
推 kurtsgm: 啊版控不就是要處理這件事的嗎? 03/20 16:17
推 quickey: 丟給chatgpt請他優化就好 03/20 16:38
推 Petyr: 這不是很正常的事情嗎 版控某方面也是預防被蓋過去啊 03/20 17:38
推 vi000246: 不正常耶 代表每個人負責的功能是互相影響的 03/20 17:55
推 wulouise: 就沒切好,檔案改了又沒查,你UT不給他過不給merge就好 03/20 18:27
推 jej: 看起來怪怪的 這是大家都維護同一個branch的意思嗎? 03/20 18:35
→ jej: 如果不同branch 就是給衰小的人merge 03/20 18:36
→ jej: 本文中提到的rebase是指你們上到master很頻繁嗎? 03/20 18:38
推 happy8649: 開發專案照檔案切負責範圍???第一次聽到,長見識了 03/20 19:17
推 gigayaya: 感覺你們該做的是切branch來最小化這個問題 03/20 19:29
→ siriusu: 衝突很常見啊,尤其團隊規模一大自然避不開 03/20 19:40
→ answermangtr: 你要PR前本來就要rebase 跟是不是branch有啥關係 03/20 20:18
→ answermangtr: 03/20 20:18
推 Lipraxde: 版本控制讓多人對同一段 code 貢獻變得可能,衝突時解 03/20 20:28
→ Lipraxde: conflict 很正常,而往往問題不是在 conflict,而是在 03/20 20:28
→ Lipraxde: 有人 code 寫太爛 03/20 20:28
推 answermangtr: 會容易改到同一段code或同一個function是你們本身 03/20 20:28
→ answermangtr: 架構上就有問題 沒做好solid吧 03/20 20:28
推 howardsun: 超正常啊,公司一個人只負責特定的程式碼,會滿危險的 03/20 21:44
→ howardsun: ,沒辦法互相 cover 03/20 21:44
→ wwndbk: vscode live share 03/20 22:48
推 SHANGOYANYI: 你們的系統可能缺乏「架構」 03/20 22:59
→ umum29: 正常 尤其有兩三個長期專案在跑時 常會影響其他人 03/21 00:24
→ umum29: 其實這也是CICD的精神 一但commit就要做integration test 03/21 00:29
→ umum29: 就算模組切的在細 都有可能遇到多人開發conflict的狀況 03/21 00:30
→ blReader: 最小單位用檔案切開 除非你們真的湊巧 他加欄位你修功能 03/21 00:44
→ blReader: 不過這是理想的情境 專案頻頻發生衝突這並不正常 03/21 00:48
→ blReader: 確實做到單一職責 切開之後別人的code多髒都不關你事 03/21 00:53
推 nayeonmywife: 請切開 03/21 02:22
推 k798976869: 你自己不就有答案了 你有空幫忙切開封裝啊 03/21 07:54
推 abcf: 怎麼切都還是會有可能衝突,尤其是不同bug卻改到相近的區塊 03/21 08:21
→ abcf: 上面說什麼模組切的好就不會的都是唬爛你的,講誰都會講。 03/21 08:22
推 devilkool: 一般情況不會一起寫同一個函式吧? 03/21 09:23
→ yyc1217: 同時間不同人頻繁改同一個段落確實很奇怪 也許可以用unit 03/21 11:07
→ yyc1217: test確保執行成果符合預期 03/21 11:07
推 hidog: conflict無法完全避免喔 03/21 11:34
推 internetms52: 你想一下開放封閉原則你就會發現他不符合,但礙於 03/21 12:38
→ internetms52: 每個人現在都有新的功能要開發,我建議你們各自寫 03/21 12:38
→ internetms52: 一個擴充版本跟測試,以後找另一個人重構,除非你 03/21 12:38
→ internetms52: 們有一個大神直接重構成很好的樣子,不然一直改會 03/21 12:38
→ internetms52: 很痛苦 03/21 12:38
→ jej: 樓上 理想很豐滿 現實和骨感 03/21 12:42
→ jej: 是不想回家了的意思嗎? 03/21 12:42
推 k798976869: 慣老闆:浪費時間重構啥雞巴 能賺錢嗎 03/21 12:55
推 xluds24805: 你動到別人可能在改的 code 時,就要有意識可能會 con 03/21 13:37
→ xluds24805: flict。先跟對方確認沒有相依,有的話就約定好一個順 03/21 13:38
→ xluds24805: 序,看是誰要先誰要後 03/21 13:38
→ legnaleurc: 找一個人重構, 這種沒考績的屎缺誰要做 03/21 14:08
→ blReader: 先寫測試 有測試保護再談重構 重構也不用特地請人寫 03/21 15:20
→ blReader: 重構是在有寫測試保護的情境下 自己找時間或順手重構 03/21 15:23
推 s06yji3: 一般不太可能知道這個code同時有誰在改吧...... 03/21 19:24
推 SHANGOYANYI: 如果跑敏捷 也可以在daily standup講一下自己今天要 03/21 19:31
→ SHANGOYANYI: 處理的ticket做溝通啦… 03/21 19:31
→ jej: 樓上 多數的scrum master為了排除障礙 03/21 21:02
→ jej: 短期見效 就是派衰小的人去merge阿XD 03/21 21:02
→ jej: 他這個問題就有點像是工項拆解 03/21 21:10
→ jej: 或是程式架構 03/21 21:10
→ jej: 甚至到git branch的切割 03/21 21:10
→ jej: 其中的某一項或是某幾項有問題 03/21 21:10
→ jej: 乍看之下應該是無法在立會後短期奏效的issue 03/21 21:10
→ umum29: 負責merge的人真的衰 所以我們是每週不同人輪流merge 03/22 00:47
→ superpandal: 版控又不能控需求還有工作分派和時程 03/22 01:07
→ superpandal: 組件分開再組裝稍微好點 不是一個一個ser 03/22 01:12
→ superpandal: server 強迫別人寫稍好的程式 03/22 01:13
→ superpandal: 模組化 03/22 01:14
→ acgotaku: 這跟元件,solid 哪有什麼關係,任務分配下去 共用到哪些 03/22 14:25
→ acgotaku: 邏輯又不能控制 03/22 14:27
→ acgotaku: 你確保封裝邊界不要更改,如要大改 要通知大家有相依的 03/22 14:29
→ acgotaku: 先等你的發車在往下進行 如果有人比你急 你就晚點改 03/22 14:29
→ superpandal: 功能本來就一環串一環 怎麼切看話事人功力 03/22 19:55
→ superpandal: 力 我講的不是solid 是專案內kiss 03/22 19:56
→ superpandal: 統整的人再把它串起來功能就完成了 03/22 19:58
→ superpandal: 就像shell只是調用方的角色 前面說的衝突 03/22 20:24
→ superpandal: 的衝突多是一個人事情做太多會發生的 03/22 20:25
→ superpandal: 其實也就是叫別人寫lib 好處很多 03/22 20:31
→ blReader: 相依於介面 改的人修內部邏輯 用的人DI介面 就不會衝突 03/22 23:28