当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Julia LibGit2.merge!方法用法及代码示例


用法一

merge!(repo::GitRepo, anns::Vector{GitAnnotated}; kwargs...) -> Bool

将注释提交中的更改(捕获为 GitAnnotated 对象)anns 合并到存储库的 HEAD repo 中。关键字参数是:

  • merge_opts::MergeOptions = MergeOptions() :如何执行合并的选项,包括是否允许快进。有关详细信息,请参阅 MergeOptions
  • checkout_opts::CheckoutOptions = CheckoutOptions() :如何执行结帐的选项。有关详细信息,请参阅 CheckoutOptions

anns 可以指远程或本地分支头。如果合并成功,则返回true,否则返回false(例如,如果由于分支没有共同的祖先而无法合并)。

例子

upst_ann = LibGit2.GitAnnotated(repo, "branch/a")

# merge the branch in
LibGit2.merge!(repo, [upst_ann])

用法二

merge!(repo::GitRepo, anns::Vector{GitAnnotated}, fastforward::Bool; kwargs...) -> Bool

将注释提交中的更改(捕获为 GitAnnotated 对象)anns 合并到存储库的 HEAD repo 中。如果 fastforwardtrue ,则 only 允许快进合并。在这种情况下,如果发生冲突,合并将失败。否则,如果 fastforwardfalse ,则合并可能会产生用户需要解决的冲突文件。

关键字参数是:

  • merge_opts::MergeOptions = MergeOptions() :如何执行合并的选项,包括是否允许快进。有关详细信息,请参阅 MergeOptions
  • checkout_opts::CheckoutOptions = CheckoutOptions() :如何执行结帐的选项。有关详细信息,请参阅 CheckoutOptions

anns 可以指远程或本地分支头。如果合并成功,则返回true,否则返回false(例如,如果由于分支没有共同的祖先而无法合并)。

例子

upst_ann_1 = LibGit2.GitAnnotated(repo, "branch/a")

# merge the branch in, fastforward
LibGit2.merge!(repo, [upst_ann_1], true)

# merge conflicts!
upst_ann_2 = LibGit2.GitAnnotated(repo, "branch/b")
# merge the branch in, try to fastforward
LibGit2.merge!(repo, [upst_ann_2], true) # will return false
LibGit2.merge!(repo, [upst_ann_2], false) # will return true

相关用法


注:本文由纯净天空筛选整理自julialang.org 大神的英文原创作品 LibGit2.merge! — Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。