Kam*_*yar 2 version-control mercurial fork codeplex
我正在定制BlogEngine.Net以支持自定义本地功能(波斯语日历,RTL主题等)
BlogEngine.Net使用mercurial源代码控制,我能够创建项目的分支并将其更改提交给它.但我想将它作为一个单独的项目发布,因为代码中有重大修改以支持波斯语,我不打算向主项目发送拉取请求.AFAIK我有两个选择:
现在使用叉子有什么好处?如果我创建一个fork,我是否能够像自己的项目(选项1)一样在自己的页面中释放我的项目?通过说"它自己的页面"我的意思是我希望有一个像"FarsiBlogengine.CodePlex.Com"这样的地址并制作二进制版本,可以下载源代码版本,有一个讨论论坛等.就像我有的功能一样当我不使用分叉时.
一般来说,使用分叉而不是下载主项目,创建新项目和承诺新项目的优点是什么?
谢谢.
分叉(又名:克隆)(又名:选项#2)的主要好处是您的存储库将包含父存储库的整个历史记录,如果需要,可以启用从该存储库推送或拉出的选项.使用选项#1,您将从父存储库的快照开始,并丢失项目历史记录/沿袭.
在确定两个存储库是否相关时,Mercurial将寻找一个共同的祖先 - 在选项#1的情况下,你将没有那个,并且在选项#2的情况下,你将.即使你明确声明你不想与父仓库执行任何同步(推/拉/等等),你可能会发现BlogEngine.net发布了一个关键的错误修复,你想要拉过来并执行拉动偶尔.选项#1将阻止您这样做,因为它不会找到共同的祖先,但选项#2将允许它.
在发布代码方面,我并不完全确定"它自己的页面"是什么意思,但我不认为你会发布任何一个选项的任何问题.在这两种情况下,您只拥有一个简单的存储库.在#2的情况下,您只有一个更大的存储库,其中包含更多提交和更多历史记录.
归档时间: |
|
查看次数: |
614 次 |
最近记录: |