我正在研究一个项目,使用Fossil进行版本控制和组织。除了主干分支外,我还有一些分支,并且只想更新(提交)一个分支。进行提交会将我的更改推送到主文件的一个分支上(我在Chiselapp上托管我的项目) 。如何在不影响主文件的情况下仅更新或提交单个分支?
答案 0 :(得分:1)
提交只会影响单个分支。除了也许合并两个分支之后,但我假设您还没有这样做。
我唯一想到的是您使用的皮肤具有一个链接到dir?ci=tip
的“文件”菜单项。 tip
是最近一次提交的特殊名称。这意味着,如果您在与trunk
不同的分支中进行提交,则“文件”菜单项现在将向您显示该另一个分支的文件。
一种修正的临时方法是在之后的trunk
中进行提交,以便tip
再次引用trunk
。但这并不理想。
永久修复此问题的最简单方法是,选择一个不执行此操作的皮肤,或编辑皮肤的标题,然后用另一个链接dir?ci=tip
替换到dir?ci=trunk
的链接例如。这样,该菜单项将始终显示trunk
分支中的文件。
答案 1 :(得分:0)
化石不同于Git一次推/拉所有分支和标签*。原因(除设计外)是Fossil信息库是一个数据库,在各个方向上推送/完全同步数据库。
这意味着,如果您在多个分支上提交了更改,则所有这些分支都将被推送到远程。
*除非要更改,更改是在私有分支上完成的(请参见fossil help
中的fossil commit --branch --private
,fossil branch new --private
)。
默认情况下,私人提交/分支不包括在推/拉中。要同时包含这些内容,请使用--private
选项(对于fossil help
,请参见fossil push --private
)。
更改被推送后,它们将集成到远程仓库中,并且可以作为单独的提交或通过它们所属的分支在远程仓库的Web GUI中查看。该视图包括Files
部分,该部分反映了提交版本的回购内容(快照)。
要回答您的问题:如果您对现有的trunk
分支进行了更改,则它们也将被推送到远程trunk
。如果您不想对远程trunk
进行更改,则可以在新分支(作为新分支推送)或私有分支(默认情况下不推送)中进行更改。 / p>