Introduce PushCommand to manage push operation and options