台灣最大程式設計社群網站
線上人數
1014
 
會員總數:240385
討論主題:186371
歡迎您免費加入會員
討論區列表 >> 心情甘苦談 >> 大家都怎麼做版本控管?
[ 變換順序 ]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
大家都怎麼做版本控管?
價值 : 100 QP  點閱數:620 回應數:5

樓主

QB
中級專家
2157 5
1429 167
發送站內信

講到版控, 早些年大家想到的就是SVN, 近年最紅的非GIT莫屬, 前幾天有個朋友說他們是用自家ERP產品的架構開發版控系統,
很好奇免費版控軟體這麼多, 為什麼還要自行開發?
他們以前曾用過VB6的版控, 也曾經想用SVN/GIT, 但都沒成功, 最後決定依他們公司的現況在儘量不改變工程師習慣下量身訂做,
剛剛他分享了這張照片,



照片資訊寫到他們版控做法是:

有需求時輸入問題單
=> 提出解決方案後派工
=> 工程師以"修改"模式下載 source 做鎖定(此時其他人仍可以"參考"模式下戴相同source, 但無法上傳), 一般是下載最新版的 source, 也可以指定某次上傳的 source
=> 程式修改完成後上傳 (每次上傳會保留當次上傳的檔案), dll/exe 會同時更新到測試區
=> 測試若有問題工程師可再次修改上傳, 直到測試通過後發行
=> 發行會把dll/exe更新到正式區, 解除 source 鎖定, 此時才可再次用"修改"模式下載
=> 需求提案人確認沒問題後把問題單結案

他們的系統分成數千個專案(相對於Visual Studio的專案), 每個專案有負責人, 同一時間原則上只會有一個人負責修改,
少數由多人共同維護的專案, 非負責人通常以參考模式下載, 再把修改內容 pass 給負責人整合,
每個專案在本機電腦會有一個對應的資料夾 (每個人存放路徑不一定相同), 專案首次上傳或下載時設定好在本機的路徑, 之後只要輸入專案名稱就可以把整個資料夾的檔案上傳或下載,
他們接到派工通知後, 只要進系統在下載單打專案名稱及要修改的內容, 如果前一次上傳不是本人, 系統會提醒要下載 source 更新, 否則不需要下戴, 因為最後一次上傳就是自己本機的版本,
程式改完在上傳單輸入下戴單號就會自動帶出專案和修改內容, 所以通常就直接按存檔, 然後按上傳, 再按發mail通知就好了, 操作很便利


哇, 這已經不是版控了, 整個流程還結合了需求與測試發行, 他們家果然是專業的ERP開發商, 連符合軟體業的模組都有了
不知道大家還有那些比較酷的版控做法可以分享一下

搜尋相關Tags的文章: [ 版控 ] , [ 版本控管 ] , [ SVN ] , [ GIT ] ,
本篇文章發表於2016-05-27 20:19
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
作者回應

QB
檢舉此回應
照片 show 不出來, 直接給網址看能不能開
https://photos.google.com/share/AF1QipPRFGkk71q_B53x0C-5cDDwzGFK0fFn9mamdmUfe92ZaM41fASbQLjswGuqnKJhjA?key=LW1fTk9abjJiMzQxZTZlYkpzVWtycTJid0Jmc3RB
本篇文章回覆於2016-05-27 20:24
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
最有價值解答

孤影
捐贈 VP 給 孤影 檢舉此回應
看畫面,不是很確定他們是怎麼做檔案比對跟特定檔案的修改紀錄.
而且聽你的描述,似乎是每次都是checkout整個專案,不能只checkout特定的檔案.
另外也不確定有沒有分不同環境不同測試階段的功能.

如果只談版控,那大概就是svn, git之類的.
但是如果是談DevOps,或是CI.
那就更多了..

之前用
svn + jira + final builder
後來改用
gitlab + jira + jenkins
gitlab + redmine + jenkins


本篇文章回覆於2016-06-01 10:38
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
作者回應

QB
檢舉此回應
他們確實是checkout整個專案, 他們的理由是
1. 資料庫內有記錄每次上傳檔案的修改日期, 要查單一檔案什麼時候改很容易, 但他們不care個別檔案改什麼, 因為有些修改是同時改好幾個檔案, 從檔案修改記錄看不到全貌,
他們要的是每個專案每次重新編譯改了什麼, 能不能快速調出該次編譯完整source做rollback
2. 系統雖然是多人開發, 但因為切分成數千個專案 (數千個?=>快破萬了, 持續增加中), 每個專案由單人負責, checkout整個專案不會影響到他人
(那為什麼還要checkout?=>總會有負責的工程師請假或忙不過來, 需要其他人代為改程式, 不用checkin/checkout管理就會出現改好忘了上傳或改一半, 其他人在不知情下拿到舊source來改)

至於測試, 他說那只是理想, 他們全公司還不到20人, 那有時間搞測試 XD


題外話:
本來無法理解這位朋友為什麼在那種微型公司可以待超過10年,當聽到富邦人壽,資誠會計,義美,新竹貨運,華視,TVBS,幾家知名連鎖超商和速食店,甚至還有著名的宗教團體都是他們客戶,我下巴差點掉下來,
問你們公司這麼小又沒聽過,他們怎麼敢用?
=>很多是客戶介紹給客戶,像資誠就幫他們介紹不少客戶,也有客戶員工離職後介紹給新公司,有些是透過合作伙伴,少數才是自行找上門的,而且他們家的會計模組很有特色,是其他家(包括國外)難以取代的,UI也很受user喜愛
本篇文章回覆於2016-06-02 20:23
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
回應

孤影
捐贈 VP 給 孤影 檢舉此回應
數千個,快破萬的專案,每個專案由單人負責,負責的工程師請假需要其他人代為改程式....然後公司只有20人....
這實在是難以想像...

不過有些系統只要穩定就好,不太需要甚麼大改版...
本篇文章回覆於2016-06-03 10:14
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
作者回應

QB
檢舉此回應
他們公司不到20人, 扣掉5個客服兼業務兼講師兼顧問, 再扣掉老闆, 工程師其不到10人, 然後還很得意的說, 公司早上9點~11點陸續有人進公司, 晚上6點陸續走人, 8點以後通常只剩老闆, 看來這就是做套裝和接專案的差別吧
本篇文章回覆於2016-06-04 22:09
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
[ 變換順序 ]   
1

回覆
如要回應,請先登入.