在过去的一年里,我已经沉迷于颠覆.我是唯一的开发人员,我也参与了一些自己的项目.使用SVN,它可以很容易地管理所有内容 - 并且因为它通过HTTPS托管在在线服务器上,所以我可以从任何地方访问我的代码.它也非常适合将代码部署到我们的生产/开发服务器.
我的观点是它完成了我需要它做的所有事情并且从未让我失望过.
有更好的吗?我是否错过了其他可以用来让我的生活更轻松的产品的功能?我一直都在使用最好的软件,并且没有问题迁移到新技术.
我听说过GIT并做过一些研究.我打算尝试一下,但是当我搞砸了它时,还有另外一个被认为是"行业标准"的其他源控制系统,他们做的事情比SVN更好吗?
我的项目中出现了一些复杂的颠覆合并:长期分离的大分支.Svn给出了太多的冲突 - 其中一些似乎是虚假的.
鉴于git对于优秀的合并体验而言,为了使合并更易于管理,使用git-svn 它是否有益?
你能推荐其他的替代品(如svk,hgsvn),以减轻疼痛合并?
有些冲突很容易解决(例如java导入,空格) - 所以我也想知道是否有任何自动解决方案.
将来可能会完全切换到DVCS(我们中的一些人会喜欢),但现在不行.(更新:这不再是真的 - 团队最近完全切换并对此感到高兴).
提前致谢.
PS:有些帖子似乎是相关的(例如git-svn合并2个svn分支),但他们没有完全回答这个问题.
更新:看完我的-novice-回答后再往下走(这个道路).
任何人都可以告诉我如何使用SharpSVN Library对存储库的用户(SVN用户)进行身份验证.该存储库只应由这些用户提交.谢谢
如何将SVN中的分支合并回所有提交历史记录?我知道在Git中我可以使用
merge -squash
Run Code Online (Sandbox Code Playgroud)
SVN中有没有等效的命令?我正在使用SVN 1.6.
当我做了一个git svn rebase时,它停止了一点说:
Index mismatch: SHA key of a tree != SHA key of another tree. (我知道这些SHA键对应一棵树而不是上面两个sha键的git show提交.)
re-reading <sha index of a commit in svn/trunk>
... list of files ...
fatal: bad object <SHA1 index of the bad object>
rev-list -1 <SHA1 index of the bad object> --not <SHA1 index of the revision it was trying to re-read>: command returned error: 128
Run Code Online (Sandbox Code Playgroud)
我对git的内部工作方式不是很有经验,所以是否需要按照一系列步骤来剖析像这样的问题并可能解决它们?
当SVN通知我冲突时,我希望能够使用kdiff3解决冲突.如何将其设置为此默认工具?
我不能提交,但我可以更新.
当我尝试提交时,我收到以下错误:
访问'/ svn/myservice /!svn/act/d99e498e-9a8d-374c-a3e4-fde21198bfa2'forbidden
我正在使用Windows 7 64位.
在我现有的(Pre-SVN 1.5)合并策略中,我们在创建分支时创建Trunk(称为BasePoint)的副本,以便稍后在合并期间进行引用.
当我们需要将分支合并回主干时,我们执行2个操作.
从BasePoint合并到LatestTrunk(Trunk可能已经从原始分支开始移动)到Branch的Working副本然后提交.
此时,我们通常会检查合并到分支中是否没有损坏任何内容
从LatestTrunk合并到LatestBranch回到trunk的工作副本然后提交.
文档建议我在Trunk上使用新的reintegrate合并并从分支中合并.
我是否需要先从主干合并到dev分支,还是包含在新的reintegrate选项中?
换句话说,新merge --reintegrate功能是否代表"我之前的每个合并"或"整个操作"?
(FWIW我使用的是TortoiseSVN 1.5.1)
我们有一个包含大量目录和文件的svn存储库,我们的构建系统需要能够在检出之前以递归方式查找存储库中的分支的所有svn:externals属性.目前我们使用:
svn propget svn:externals -R http://url.of.repo/Branch
Run Code Online (Sandbox Code Playgroud)
事实证明这非常耗时并且是真正的带宽占用.似乎客户端正在接收回购中所有内容的所有道具并在本地进行过滤(尽管我还没有通过wireshark确认这一点).有更快的方法吗?优选地,使服务器仅返回所需数据的某种方式.