2010-06-10 51 views
3

使用水银,我们可以通过使用Mercurial(hg),如何只推送一个文件或一个目录?

hg commit file.rb 

或1个文件夹

hg commit foldername 

提交一个文件,但我们如何才能推动仅有1档或1个文件夹呢?

整个项目可使用

hg push ssh://[email protected]//project/code/preliminary 

被推但似乎没有办法推出仅1档或1个文件夹?

我尝试以下,他们不工作:

hg push ssh://[email protected]//project/code/preliminary app/views/index.html.erb 

hg push ssh://[email protected]//project/code/preliminary/app/views/index.html.erb 

回答

3

这不是真的有可能有水银。 Mercurial(以及Subversion,git和自CVS以来几乎所有的版本控制系统)的重点在于你处理变更集;每次提交都是对一个或多个文件的一组更改。推拉只知道提交,而不是每个提交的每个部分。

+0

等一下...我认为从阅读hginit.com,据说使用hg,我们可以按我们想要的频率提交,以便保持增量/逐步修改......那么,如果我们的工作项目的2个部分,还有一部分我们继续承诺但没有完全工作,第二部分我们也继续承诺,现在正在工作,我们希望推动它?那么第1部分和第2部分都必须推在一起? – 2010-06-10 04:11:09

+0

实际上在Subversion中,我们只能提交1个文件或1个文件夹...所以我从“从本地机器到中央存储库”的角度来看待这个......所以SVN真的可以做到这一点.. – 2010-06-10 04:13:34

+1

在这种情况下,您应该在两个不同的分支中完成您的工作,或者两个不同的分支。您可以使用'hg outgoing'来查看'hg push'将向上游发送哪些提交。 这听起来像你在混合feature1提交feature2提交,你想樱桃选择哪些发送;不幸的是,这对于hg来说有点棘手,并且会花费比我可以放入这个小盒子更多的字符。 :) – clee 2010-06-10 04:15:09

相关问题