diff --git a/Commands/Force Push.tmCommand b/Commands/Force Push.tmCommand
new file mode 100644
index 0000000..79b450a
--- /dev/null
+++ b/Commands/Force Push.tmCommand
@@ -0,0 +1,33 @@
+
+
+
That was a close one!
' + output_show_html and return + when FORCE_PUSH_NO + force = false + end if force + + title = "Push" + title = "Force "+title if force + current_name = branch.name - for_each_selected_remote(:title => "Push", :prompt => "Select a remote source to push the branch #{current_name} to:", :items => git.remote.names) do |remote_name| - puts "Pushing to remote source '#{remote_name}' for branch '#{current_name}'
" - display_push_output(git, run_push(git, remote_name, :branch => current_name)) + for_each_selected_remote(:title => title, :prompt => "Select a remote source to push the branch #{current_name} to:", :items => git.remote.names) do |remote_name| + puts "#{title}ing to remote source '#{remote_name}' for branch '#{current_name}'
" + display_push_output(git, run_push(git, remote_name, {:branch => current_name, :force => force})) git.submodule.all.each do |submodule| next unless (current_branch = submodule.git.branch.current) && (current_branch.tracking_branch_name) diff --git a/Support/lib/git.rb b/Support/lib/git.rb index a0f5dcc..4a0e7a2 100644 --- a/Support/lib/git.rb +++ b/Support/lib/git.rb @@ -267,6 +267,7 @@ def show(fullpath, revision) def push(remote, options = {}) options = options.dup args = ["push", remote] + args << "--force" if options[:force] args << options.delete(:branch) if options[:branch] args << options.delete(:tag) if options[:tag]