Re: [請益] 如何做版本控管

看板Soft_Job作者 (沉默是金。)時間13年前 (2011/04/12 00:58), 編輯推噓6(6021)
留言27則, 10人參與, 最新討論串4/4 (看更多)
※ 引述《erik777 (水樹奈奈紅白登場!!!)》之銘言: : → TonyQ:git 基本上真的比較不常看到 GUI tool ,可以試試看smartGit 04/11 12:46 : → TonyQ:Mercurial 能見度感覺上在台灣比較低,我最近試用覺得還ok。 04/11 12:46 : → TonyQ:如果你要找台灣比較多人用的,svn應該不算小宗吧... 04/11 12:47 : 推 dyco:那就TFS吧~但不是免費的 04/11 14:07 : → erik777:公司不打算用SVN 我們需要離線也能做版本控管的軟體 04/11 14:21 除非你的團隊不會互相更新程式碼 ,不然我想不出來, 所謂離線也能作版本控管的理由是什麼。 想想看有些人寫了code 但是沒push ,之後炸conflict炸到死的現象, 所謂離線也能作版本控管,我覺得沒有那麼重要, 想想看這個情境: A:欸 我剛 push 了一個 API ,麻煩你用它跟著作。 B:好( pull and apply) 這種情境到處都是啊,在這種情境下你需要離線版本控管嗎? 而且寫 code 我們也都是拼命 pull 東西怕conflict 。 如果連線的地方沒有對外網路,一般而言, 多是都集中在同一個區網做事,SVN開在內網。 既然大部分的使用情境你都很難脫離網路, 以是否能夠離線存取來決定實在是不聰明...... 只要你是個需要彼此互相合作的團隊,離線存取通常不是優勢... 頂多是找log/diff 比較快 XD 之所以推薦你svn ,就是因為對新手來講 commit/update 都不太熟了, 還要 push - pull 可能還有潛在的多 branch 真的會把事情弄得很複雜。 我喜歡 git/hg ,我自己專案也有都在用這兩隻, 不過因為我之前已經有用過svn一兩年,而且我也有花幾個月用專案在磨git, hg 是蠻多觀念跟git 有點像,以我基本的用法在接 hg 的時候接蠻快的。 重要的問題還是你們的公司是能掌握 Version control , 還是只是被 version control 牽著走? 我幾乎可以想像你們沒有使用 version control , 沒有作適合version control 的專案內容/分工切分, 像是不同角色編輯共同檔案的機率應降到最低,特別是語系檔之類的。 之後一樣是會踢 conflict 踢到死,拼命掉版本, 整天有人在哀號是不是有人忘了push 、忘了pull。 你們需要的是找個真正有使用經驗的顧問幫你們導入, 不要一昧的瞎作,也不要急著開條件... 即使一開始用的是 svn ,也可以採用git-svn 作你希望的離線處理, 也可以之後匯入 hg ,當你們真的準備好之後。 我覺得你顧慮的事情都不是重點, conflict / 怎麼合作才是 VC 系統的痛點。 -- 一點淺見。 -- 我:一半的日子讓你說,我聽你說你的所有______________________________________ ______________________________________一半的日子我想說,對你說過去的所有:我 _______________________________________________________ 在討論中妥善扮演兼具聆聽與分享的角色,是我們一生的課題。 _______________________________________________________ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.81.124.28

04/12 01:01, , 1F
謝謝板大指教
04/12 01:01, 1F

04/12 01:08, , 2F
幾個工程師去客戶那debug時就常會遇到沒對外網路的狀況
04/12 01:08, 2F

04/12 01:09, , 3F
程式改完後彼此之間就會需要在不連主機的情況下訂版過版
04/12 01:09, 3F

04/12 01:11, , 4F
最近還滿常遇到的 所以主管才會提要離線也能做定版
04/12 01:11, 4F

04/12 01:20, , 5F
那不是問題,幾乎所有的VC都提供patch功能。
04/12 01:20, 5F

04/12 01:31, , 6F
「彼此之間就會需要在不連主機的情況下訂版過版」我以為這件
04/12 01:31, 6F

04/12 01:31, , 7F
事是指push到server,而不是local commit耶?
04/12 01:31, 7F

04/12 01:32, , 8F
那如果所謂訂好板 過好板 push之後有conflict 那怎麼辦?
04/12 01:32, 8F

04/12 01:33, , 9F
我覺得你們需要的搞不好是幾隻3.5g網卡,而不是離線存取XD
04/12 01:33, 9F

04/12 01:34, , 10F
如果你堅持 那用git或hg是沒問題的,文章中提的事情有顧到就
04/12 01:34, 10F

04/12 01:35, , 11F
好了。那些是我覺得比較痛的地方。
04/12 01:35, 11F

04/12 08:15, , 12F
除非被在等別人東西做出來不然一天push一次根本很夠了
04/12 08:15, 12F

04/12 08:16, , 13F
除非就是你們一堆人都在改同樣幾個檔案 那就沒辦法
04/12 08:16, 13F

04/12 09:19, , 14F
先用svn 等你覺得功能不夠了 再考慮其它的選項...
04/12 09:19, 14F

04/12 09:39, , 15F
這要看各公司對 commit 的態度,有的地方三不五時就在改api
04/12 09:39, 15F

04/12 09:39, , 16F
今天早上A改了核心api , 中午B用了舊API,晚上merge爆炸
04/12 09:39, 16F

04/12 09:40, , 17F
一堆人都在改同樣幾個檔案 其實也是在所謂專案分工的範疇裡
04/12 09:40, 17F

04/12 09:40, , 18F
我對pull的態度一向都是當成吃飯喝水一樣無時無刻做一下。
04/12 09:40, 18F

04/12 10:39, , 19F
api 不是應該先 deprecate 再慢慢淘汰嗎? 不然用的人一多
04/12 10:39, 19F

04/12 10:40, , 20F
頻繁改 api 當然會死
04/12 10:40, 20F

04/12 11:35, , 21F
所以我說,問題是專案/組織有沒有對這些事情去進行控制。
04/12 11:35, 21F

04/12 23:13, , 22F
推這篇~~
04/12 23:13, 22F

04/13 15:48, , 23F
板主應該要分享一下 conflict 血淚史 :P
04/13 15:48, 23F

04/13 17:28, , 24F
最血淚的就是編輯語系檔一天conflict 10幾次的往事了
04/13 17:28, 24F

04/13 17:28, , 25F
幾乎是每編必見紅...
04/13 17:28, 25F

04/14 14:27, , 26F
板主這篇可以自己M了吧,不用避嫌阿XD
04/14 14:27, 26F

04/16 23:40, , 27F
10人以下開發團隊可以使用rational team concert...
04/16 23:40, 27F
文章代碼(AID): #1DepCkU0 (Soft_Job)
文章代碼(AID): #1DepCkU0 (Soft_Job)