2010-04-26 78 views
2

我知道这不是最好的做法,但每当我合并一个巨大的变化与树干(我知道我的分支是最新的),我会简单地删除干线的内容,然后复制我的分支的内容,这样我就不必处理解决一小时的冲突。问题是我似乎失去了每个文件的提交消息的整个历史记录。我的分支仍然有提交消息的正确历史记录......我如何将它们合并起来?复制颠覆提交信息

回答

1

你不能将你的分支合并到主干中。这听起来像是你真的在复制这些文件,因此创建了一个需要跟踪并丢失历史记录的新文件。

6

你迫切需要去阅读Branching and Merging。你正在做的是对付SVN,而不是使用它。
我不想使用该存储库。

这种情况的最佳做法是什么?

您尽可能经常地将来自干线的更改合并到分支中。这也是你之前做的最后一件事重新整合该分支的变化进入主干。

+0

我是新来的颠覆,所以我仍然在学习最佳实践。我尝试清空后备箱,然后合并到我的分支中,但无济于事。没有任何文件似乎传输。我意识到*正确*的方法是将我的分支与主干合并,但正如我所说的,有大量的变化难以解决。这种情况的最佳做法是什么? (除了显而易见的:经常提交) – Falcor 2010-04-29 04:03:40

+0

@Falcor:我在我的回答中回答了您的问题。 – sbi 2010-04-29 05:26:16

-3

Mercurial和Git使合并更容易(如hereherehere所述)。这听起来并不像你使用它的方式从你的存储库中获得很多价值,所以你不妨考虑切换,没有像现在那样多的麻烦合并。

哦,并删除干线的所有内容是一个坏主意。没有“我知道,但是......”的数量变得更好。

+1

为什么每隔一段时间有人问SVN的问题,一些DVCS提倡者就会出现,并建议切换到git或hg?你们是否在看'svn'标签,这样你就可以宣扬不配呢? – sbi 2010-04-26 09:30:39

+0

不,我跟那个没什么关系。 Falcor发生的问题是因为他发现使用svn合并困难。因为这是svn和hg之间的主要区别之一,所以我提出了一个不会使合并变得困难的工具,这样可以让他专注于他想完成的工作。 讲道是我还没有学会在讨论像环境问题时避免做的事情。 ;)其他人的商店中的版本控制不是这样的问题。 – 2010-04-26 11:32:04

+1

在我看来,OP有合并的恐惧。这可能是由于合并SVN很困难,或者他认为这很困难。事实上,他已经从树干合并到他的分支,但不是从他的分支到树干。我想在阅读sbi的链接后,他会发现SVN很适合他。 – MatrixFrog 2010-04-26 17:11:26