什么是在客户现场工作的最佳方法(几个人)也许那里有没有互联网接入的全部时间和使用Subversion版本库?
(迁移到Git或Mercurial是出了问题的那一刻)
但不会是有可能利用类似,例如Git的SVN整合,打造其作用类似于客户端颠覆库,它可能在年底被用来修改同步回颠覆代理? 是否已有类似的东西可用?
什么是在客户现场工作的最佳方法(几个人)也许那里有没有互联网接入的全部时间和使用Subversion版本库?
(迁移到Git或Mercurial是出了问题的那一刻)
但不会是有可能利用类似,例如Git的SVN整合,打造其作用类似于客户端颠覆库,它可能在年底被用来修改同步回颠覆代理? 是否已有类似的东西可用?
我认为SVK可以提供你在找什么。
其实,有一个工具叫混帐混帐SVN。 你可以在这里找到更多的信息: http://git-scm.com/docs/git-svn
你使用git作为主VCS,并且比SVN信息库的同步。
没有足够的代表发表意见,但我想指出的是,SVK正式“死亡”; 该项目不再由先前的维护者,这是相当多一个人的改善。 从本质上讲,该项目的维护者说:“SVK是很酷,但现在每个人都知道,你应该使用分布式工具,所以这是不值得维护了。”
官方“生命的终结”式的博客文章可以在最佳实用的网站上发现,在他们的博客文章的话题。
这就是说,SVK很可能还是正确的工具。 即使混帐svnserver存在,你不会是能够做到远程使用SVN客户端多次提交。 然而,学习SVK是不是真的从学习git的不同。 最后,我认为,混帐SVN可能是你想要的工具,因为你的使用情况 - 使用SVN客户端提交多次更改,然后推送到服务器 - 是不可能的。 后端可以留SVN或你有什么,但你将不得不学习一些不同的客户端,和git可能是正确的。
您可以使用SVK这是在颠覆建立了一套Perl脚本,提供了一些DVCS一样的功能。 我之前但是只有在一个非常简单的方法已经使用SVK。 据我所知,它可以做这种离线代理操作。
您可以使用Git或集市从Subversion签出(我猜水银太),去客户现场和脱机工作使尽可能多的“本地提交”只要你想,当你再次有连接,使用不同的选项让那些变回颠覆。 让我们快速复习的步骤。
使用GIT(GIT-SVN)或巴扎(BZR-SVN)从Subversion结帐:
# using Git git svn clone SVN_REPO_URL # using Bazaar bzr branch SVN_REPO_URL
这些并不总是完美地工作,尤其是在Subversion版本库大。 语法是可能与水银类似了。 试试你喜欢的工具,如果它不工作,尝试另一种。
请记住,克隆/分支步骤可能会花费很长的时间,因为这些工具获取整个仓库,不一样的Subversion的最新版本。
在客户现场工作(或断开连接,或者在咖啡馆),并提交更改,只要你想尽可能多的。 你不需要网络连接,因为这些分布式VCS工具,整个仓库本地存在,并且你的提交将在这个本地仓库。
需要注意的是,除了能够在本地提交,你可以做所有其他信息库的操作,如浏览历史,因为一切都在本地仓库。
当然,你需要熟悉的Git /巴扎为了能够使用它。
让您的本地更改回颠覆。 主要有两种途径:重订和合并。 重订手段复卷本地更改您的Google Checkout的地步,快进在Subversion版本库,你错过了更改,并在上面可以重播你的变化,然后推动这些变化给颠覆。
使用Git:
git svn rebase git svn dcommit
利用集市:
bzr rebase bzr push :parent
这是一种先进的利用工具。 对于一件事你必须安装额外的插件( git-svn
,如果你选择使用Git的, bzr-svn
和bzr-rewrite
,如果您选择使用大巴扎(尽管这些都包含在Windows和Mac OS X的默认安装)你需要这些工具的工作知识有效地使用它们。