Sha256: 84b1b967d9997fd62142edec0153f9e062f87285e19f24bf940b1ec54b6b4891
Contents?: true
Size: 1.31 KB
Versions: 2
Compression:
Stored size: 1.31 KB
Contents
module Braid module Commands class Add < Command def run(url, options = {}) with_reset_on_error do mirror = config.add_from_options(url, options) branch_message = (mirror.branch == 'master') ? '' : " branch '#{mirror.branch}'" revision_message = options['revision'] ? " at #{display_revision(mirror, options['revision'])}" : '' msg "Adding mirror of '#{mirror.url}'#{branch_message}#{revision_message}." # these commands are explained in the subtree merge guide # http://www.kernel.org/pub/software/scm/git/docs/howto/using-merge-subtree.html setup_remote(mirror) mirror.fetch new_revision = validate_new_revision(mirror, options['revision']) target_revision = determine_target_revision(new_revision) unless mirror.squashed? git.merge_ours(target_revision) end git.read_tree_prefix_u(target_revision, mirror.path) mirror.revision = new_revision mirror.lock = new_revision if options['revision'] config.update(mirror) add_config_file git.commit("Add mirror '#{mirror.path}' at #{display_revision(mirror)}") msg "Added mirror at #{display_revision(mirror)}." end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
braid-1.0.10 | lib/braid/commands/add.rb |
braid-1.0.9 | lib/braid/commands/add.rb |