~abentley/bzrtools/bzrtools.dev

« back to all changes in this revision

Viewing changes to rspush.py

  • Committer: Max Bowsher
  • Date: 2009-11-13 00:43:08 UTC
  • mto: This revision was merged to the branch mainline in revision 739.
  • Revision ID: maxb@f2s.com-20091113004308-4dcwu1kwt3lhf1kp
Having discovered that bzr-builddeb import_dsc.py is a horrid copy-paste job of bzrtools upstream_import.py, restructure the change to minimize divergence from it.

Show diffs side-by-side

added added

removed removed

Lines of Context:
13
13
# You should have received a copy of the GNU General Public License
14
14
# along with this program; if not, write to the Free Software
15
15
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
 
from bzrlib.branch import Branch
17
 
from bzrlib.commands import Command
 
16
from bzrlib.option import Option
 
17
from bzrlib.workingtree import WorkingTree
18
18
import sys
19
19
import os
20
 
import bzrtools 
21
 
 
22
 
class cmd_push(Command):
 
20
import bzrtools
 
21
 
 
22
from command import BzrToolsCommand
 
23
 
 
24
class cmd_rspush(BzrToolsCommand):
23
25
    """Upload this branch to another location using rsync.
24
26
 
25
27
    If no location is specified, the last-used location will be used.  To
26
 
    to prevent dirty trees from being uploaded, push will error out if there
27
 
    are unknown files or local changes.
 
28
    prevent dirty trees from being uploaded, rspush will error out if there are
 
29
    unknown files or local changes.  It will also error out if the upstream
 
30
    directory is non-empty and not an earlier version of the branch.
28
31
    """
29
32
    takes_args = ['location?']
 
33
    takes_options = [Option('overwrite', help='Ignore differences between'
 
34
                            ' branches and overwrite unconditionally'),
 
35
                     Option('no-tree', help='Do not push the working tree,'
 
36
                            ' just the .bzr.')]
30
37
 
31
 
    def run(self, location=None):
32
 
        cur_branch = Branch.open_containing(".")
33
 
        bzrtools.push(cur_branch, location)
 
38
    def run(self, location=None, overwrite=False, no_tree=False):
 
39
        cur_branch = WorkingTree.open_containing(".")[0]
 
40
        bzrtools.rspush(cur_branch, location, overwrite=overwrite,
 
41
                      working_tree=not no_tree)