作者wawawa (哇哇哇○( ̄﹏ ̄)○)
看板Soft_Job
标题Re: [请益] 关於CVS的Merging
时间Sun Jun 21 23:47:35 2009
※ 引述《grassboy2 (活力花俏草儿仔政﹞O花俏)》之铭言:
: 总觉得这种版本控管的问题比较适合问这边的大大们…
: 吗?
: 查过了google…大部分都没有针对Merge的档案内容作说明…
: 而是只下一个Merge指令而已…
: 如果问题太过白痴…请各位高手勿见怪>"<
回推文...
: 推 GregHowe:其实merge老实说很少使用....因为开发共同专案的时候
: → GregHowe:一定是每个人负责自己的code, 而不是好几人共改一个档案
: → GregHowe:cvs不会很老啊....还是很多人使用...用linux的人很常用
: → GregHowe:或者是svn 其实你可以想像如果我改的和你改的merge
: → GregHowe:这样版本控管根本是没有意义...
Branch / Merge 常不常用得看你们的开发模式...
一般来说除非专案不对外 release... 不然针对版本的维护一定会需要 branch / merge
举例来说,假设今天要对外发布 1.0 版,然後之後预定的 1.1、 1.2 版都是 bugfix 的
版本,但同时需要开发新功能,请问要如何在 trunk 里面把属於 2.0 的修改以及针对
1.x bugfix 的修改区隔?
除此之外,一般来说在版本控制里会根据公司的文化,来决定一些原则,比如:
trunk 始终都得保持可被编译成功运行,那请问你开发那种会让系统暂时编译失败的
新功能要怎麽办?整个开发完才 commit? 所以这时就得开 branch 来开发,完毕之後再
merge 回 trunk,这是好的开发习惯,搭配 CI 系统也可大幅提昇软体的品质...
: 推 ledia:没用过就别出来说嘛~ 有些 VCS 是可以 per changeset merge
: → ledia:这对不同 branch 但相同的 bug fix 是很有用的
: 推 GregHowe:那恕小弟才学粗浅, 是哪些"VCS"呢?
你要问的是 per changeset merge? SVN 就可以阿...
虽然 SVN 1.5+ 终於有 merge info... 让 merge 比较轻松,
但我觉得分散式版本控制系统 (我自己是爱用 Mercurial) 这方面才算是真正无痛...
不过当然 SVN 也是有他的优势就是 (比如某些需要档案锁定的情况)
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 123.193.202.89
1F:推 Cloud:Git好用~~ 06/24 19:12
2F:→ wawawa:我有研究过 git.. 但是评估结果 Mercurial 比较适合我 :p 06/25 00:50