Changeset 1209 in tailor
- Timestamp:
- 07/02/06 15:52:26 (7 years ago)
- Hash name:
- 20060702135226-130f5-d971789b979e66fbd26edc21b5512ee2747c0e9b
- Location:
- vcpx
- Files:
-
- 16 edited
-
repository/cvsps.py (modified) (18 diffs)
-
target.py (modified) (7 diffs)
-
repository/darcs.py (modified) (19 diffs)
-
repository/svn.py (modified) (16 diffs)
-
dualwd.py (modified) (2 diffs)
-
repository/cvs.py (modified) (1 diff)
-
repository/monotone.py (modified) (17 diffs)
-
repository/cdv.py (modified) (7 diffs)
-
repository/__init__.py (modified) (2 diffs)
-
repository/arx.py (modified) (5 diffs)
-
workdir.py (modified) (1 diff)
-
repository/tla.py (modified) (8 diffs)
-
repository/bzr.py (modified) (7 diffs)
-
repository/cg.py (modified) (7 diffs)
-
repository/git.py (modified) (17 diffs)
-
repository/hg.py (modified) (8 diffs)
Legend:
- Unmodified
- Added
- Removed
-
vcpx/repository/cvsps.py
r1183 r1209 194 194 195 195 branch="HEAD" 196 fname = join(self. basedir, 'CVS', 'Tag')196 fname = join(self.repository.basedir, 'CVS', 'Tag') 197 197 if exists(fname): 198 198 tag = open(fname).read() … … 224 224 return 225 225 226 absentrydir = join(self. basedir, entrydir)226 absentrydir = join(self.repository.basedir, entrydir) 227 227 if not exists(absentrydir) or listdir(absentrydir) == ['CVS']: 228 228 # Oh, the directory is empty: if there are no other added entries … … 242 242 from vcpx.repository.cvs import CvsEntries 243 243 244 entries = CvsEntries(self. basedir)244 entries = CvsEntries(self.repository.basedir) 245 245 246 246 # Collect added and deleted directories … … 261 261 continue 262 262 elif e.action_kind == e.DELETED: 263 if not exists(join(self. basedir, e.name)):263 if not exists(join(self.repository.basedir, e.name)): 264 264 self.log.debug('skipping "%s" since it is already ' 265 265 'deleted', e.name) … … 280 280 281 281 if e.action_kind == e.DELETED and e.new_revision is None: 282 assert listdir(join(self. basedir, e.name)) == ['CVS'], '%s should be empty' % e.name283 rmtree(join(self. basedir, e.name))282 assert listdir(join(self.repository.basedir, e.name)) == ['CVS'], '%s should be empty' % e.name 283 rmtree(join(self.repository.basedir, e.name)) 284 284 else: 285 285 cmd = self.repository.command("-d", "%(repository)s", … … 288 288 if self.repository.freeze_keywords: 289 289 cmd.append('-kk') 290 cvsup = ExternalCommand(cwd=self. basedir, command=cmd)290 cvsup = ExternalCommand(cwd=self.repository.basedir, command=cmd) 291 291 retry = 0 292 292 while True: … … 367 367 initialcset = None 368 368 369 if not exists(join(self. basedir, 'CVS')):369 if not exists(join(self.repository.basedir, 'CVS')): 370 370 # CVS does not handle "checkout -d multi/level/subdir", so 371 371 # split the basedir and use it's parentdir as cwd below. 372 parentdir, subdir = split(self. basedir)372 parentdir, subdir = split(self.repository.basedir) 373 373 cmd = self.repository.command("-q", 374 374 "-d", self.repository.repository, … … 404 404 checkout.exit_status)) 405 405 else: 406 self.log.info("Using existing %s", self. basedir)406 self.log.info("Using existing %s", self.repository.basedir) 407 407 408 408 if self.repository.tag_entries: 409 409 self.__forceTagOnEachEntry() 410 410 411 entries = CvsEntries(self. basedir)411 entries = CvsEntries(self.repository.basedir) 412 412 youngest_entry = entries.getYoungestEntry() 413 413 if youngest_entry is None: … … 415 415 "CVS repository seems empty, " 416 416 "don't know how to deal with " 417 "that." % self. basedir)417 "that." % self.repository.basedir) 418 418 419 419 # loop over the changesets and find the last applied, to find … … 450 450 raise TargetInitializationFailure( 451 451 "Something went wrong: unable to determine the exact upstream " 452 "revision of the checked out tree in '%s'" % self. basedir)452 "revision of the checked out tree in '%s'" % self.repository.basedir) 453 453 else: 454 454 self.log.info("Working copy up to revision %s", last.revision) … … 492 492 path = split(entry)[0] 493 493 494 parentcvs = join(self. basedir, path, 'CVS')494 parentcvs = join(self.repository.basedir, path, 'CVS') 495 495 while not exists(parentcvs): 496 tobeadded.insert(0, join(self. basedir, path))496 tobeadded.insert(0, join(self.repository.basedir, path)) 497 497 if not path: 498 498 break 499 499 path = split(path)[0] 500 parentcvs = join(self. basedir, path, 'CVS')500 parentcvs = join(self.repository.basedir, path, 'CVS') 501 501 502 502 assert exists(parentcvs), "Uhm, strange things happen: " \ … … 592 592 from os.path import join, exists 593 593 594 if not self.repository.repository or exists(join(self. basedir, 'CVS')):594 if not self.repository.repository or exists(join(self.repository.basedir, 'CVS')): 595 595 return 596 596 597 597 cmd = self.repository.command("-d", self.repository.repository, "co", 598 "-d", self. basedir)598 "-d", self.repository.basedir) 599 599 cvsco = ExternalCommand(command=cmd) 600 600 cvsco.execute(self.repository.module) … … 606 606 parent = split(path)[0] 607 607 while parent: 608 if exists(join(self. basedir, parent, 'CVS')):608 if exists(join(self.repository.basedir, parent, 'CVS')): 609 609 break 610 610 parents.insert(0, parent) … … 634 634 635 635 cmd = self.repository.command('-q', 'add', '-ko') 636 ExternalCommand(cwd=self. basedir, command=cmd).execute(names)636 ExternalCommand(cwd=self.repository.basedir, command=cmd).execute(names) 637 637 638 638 def __forceTagOnEachEntry(self): … … 648 648 from os.path import join, exists 649 649 650 self.log.info("Forcing CVS sticky tag in %s", self. basedir)651 652 for dir, subdirs, files in walk(self. basedir):650 self.log.info("Forcing CVS sticky tag in %s", self.repository.basedir) 651 652 for dir, subdirs, files in walk(self.repository.basedir): 653 653 if dir[-3:] == 'CVS': 654 654 efn = join(dir, 'Entries') … … 709 709 entries = ['.'] 710 710 711 c = ExternalCommand(cwd=self. basedir, command=cmd)711 c = ExternalCommand(cwd=self.repository.basedir, command=cmd) 712 712 c.execute(entries) 713 713 … … 722 722 723 723 cmd = self.repository.command("-q", "remove") 724 ExternalCommand(cwd=self. basedir, command=cmd).execute(names)724 ExternalCommand(cwd=self.repository.basedir, command=cmd).execute(names) 725 725 726 726 def _renamePathname(self, oldname, newname): … … 757 757 758 758 cmd = self.repository.command("tag") 759 c = ExternalCommand(cwd=self. basedir, command=cmd)759 c = ExternalCommand(cwd=self.repository.basedir, command=cmd) 760 760 c.execute(tagname) 761 761 if c.exit_status: -
vcpx/target.py
r1191 r1209 326 326 while added: 327 327 subdir = added.pop(0).name 328 if isdir(join(self. basedir, subdir)):328 if isdir(join(self.repository.basedir, subdir)): 329 329 self._addSubtree(subdir) 330 330 added = [e for e in added if not e.name.startswith(subdir)] … … 363 363 exclude = [] 364 364 365 if self.state_file.filename.startswith(self. basedir):366 sfrelname = self.state_file.filename[len(self. basedir)+1:]365 if self.state_file.filename.startswith(self.repository.basedir): 366 sfrelname = self.state_file.filename[len(self.repository.basedir)+1:] 367 367 exclude.append(sfrelname) 368 368 exclude.append(sfrelname+'.old') 369 369 exclude.append(sfrelname+'.journal') 370 370 371 if self.logfile.startswith(self. basedir):372 exclude.append(self.logfile[len(self. basedir)+1:])371 if self.logfile.startswith(self.repository.basedir): 372 exclude.append(self.logfile[len(self.repository.basedir)+1:]) 373 373 374 374 if subdir and subdir<>'.': 375 375 self._addPathnames([subdir]) 376 376 377 for dir, subdirs, files in walk(join(self. basedir, subdir)):377 for dir, subdirs, files in walk(join(self.repository.basedir, subdir)): 378 378 for excd in IGNORED_METADIRS: 379 379 if excd in subdirs: … … 385 385 386 386 if subdirs or files: 387 self._addPathnames([join(dir, df)[len(self. basedir)+1:]387 self._addPathnames([join(dir, df)[len(self.repository.basedir)+1:] 388 388 for df in subdirs + files]) 389 389 … … 453 453 # finally restore its name. 454 454 455 absold = join(self. basedir, e.old_name)455 absold = join(self.repository.basedir, e.old_name) 456 456 renamed = exists(absold) 457 457 if renamed: … … 465 465 # renamed+edited event). 466 466 renamed = False 467 absnew = join(self. basedir, e.name)467 absnew = join(self.repository.basedir, e.name) 468 468 renamed = exists(absnew) 469 469 if renamed: … … 507 507 from os.path import join, exists 508 508 509 if not exists(self. basedir):510 makedirs(self. basedir)509 if not exists(self.repository.basedir): 510 makedirs(self.repository.basedir) 511 511 512 512 self._prepareTargetRepository() … … 514 514 prefix = self.__getPrefixToSource() 515 515 if prefix: 516 if not exists(join(self. basedir, prefix)):516 if not exists(join(self.repository.basedir, prefix)): 517 517 # At bootstrap time, we assume that if the user 518 518 # extracted the source manually, she added 519 519 # the subdir, before doing that. 520 makedirs(join(self. basedir, prefix))520 makedirs(join(self.repository.basedir, prefix)) 521 521 self._addPathnames([prefix]) 522 522 -
vcpx/repository/darcs.py
r1197 r1209 235 235 236 236 cmd = self.repository.command("pull", "--dry-run") 237 pull = ExternalCommand(cwd=self. basedir, command=cmd)237 pull = ExternalCommand(cwd=self.repository.basedir, command=cmd) 238 238 output = pull.execute(self.repository.repository, 239 239 stdout=PIPE, stderr=STDOUT, TZ='UTC0')[0] … … 338 338 cmd.extend(['--patches', re.escape(changeset.revision)]) 339 339 340 pull = ExternalCommand(cwd=self. basedir, command=cmd)340 pull = ExternalCommand(cwd=self.repository.basedir, command=cmd) 341 341 output = pull.execute(stdout=PIPE, stderr=STDOUT, input='y')[0] 342 342 … … 358 358 cmd = self.repository.command("changes", selector, revtag, 359 359 "--xml-output", "--summ") 360 changes = ExternalCommand(cwd=self. basedir, command=cmd)360 changes = ExternalCommand(cwd=self.repository.basedir, command=cmd) 361 361 last = changesets_from_darcschanges(changes.execute(stdout=PIPE)[0]) 362 362 try: … … 379 379 ' '.join(conflict)) 380 380 cmd = self.repository.command("revert", "--all") 381 revert = ExternalCommand(cwd=self. basedir, command=cmd)381 revert = ExternalCommand(cwd=self.repository.basedir, command=cmd) 382 382 revert.execute(conflict) 383 383 … … 420 420 initial = False 421 421 422 if self.repository.subdir == '.' or exists(self. basedir):422 if self.repository.subdir == '.' or exists(self.repository.basedir): 423 423 # This is currently *very* slow, compared to the darcs get 424 424 # below! 425 if not exists(join(self. basedir, '_darcs')):426 if not exists(self. basedir):427 mkdir(self. basedir)425 if not exists(join(self.repository.basedir, '_darcs')): 426 if not exists(self.repository.basedir): 427 mkdir(self.repository.basedir) 428 428 429 429 cmd = self.repository.command("initialize") 430 init = ExternalCommand(cwd=self. basedir, command=cmd)430 init = ExternalCommand(cwd=self.repository.basedir, command=cmd) 431 431 init.execute() 432 432 … … 439 439 if revision and revision<>'HEAD': 440 440 cmd.extend([initial and "--match" or "--tag", revision]) 441 dpull = ExternalCommand(cwd=self. basedir, command=cmd)441 dpull = ExternalCommand(cwd=self.repository.basedir, command=cmd) 442 442 output = dpull.execute(self.repository.repository, 443 443 stdout=PIPE, stderr=STDOUT)[0] … … 455 455 cmd.append("--partial") 456 456 dget = ExternalCommand(command=cmd) 457 output = dget.execute(self.repository.repository, self. basedir,457 output = dget.execute(self.repository.repository, self.repository.basedir, 458 458 stdout=PIPE, stderr=STDOUT)[0] 459 459 … … 465 465 cmd = self.repository.command("changes", "--last", "1", 466 466 "--xml-output") 467 changes = ExternalCommand(cwd=self. basedir, command=cmd)467 changes = ExternalCommand(cwd=self.repository.basedir, command=cmd) 468 468 output = changes.execute(stdout=PIPE, stderr=STDOUT)[0] 469 469 … … 487 487 cmd = self.repository.command("add", "--case-ok", "--not-recursive", 488 488 "--quiet") 489 ExternalCommand(cwd=self. basedir, command=cmd).execute(names)489 ExternalCommand(cwd=self.repository.basedir, command=cmd).execute(names) 490 490 491 491 def _addSubtree(self, subdir): … … 496 496 cmd = self.repository.command("add", "--case-ok", "--recursive", 497 497 "--quiet") 498 ExternalCommand(cwd=self. basedir, command=cmd).execute(subdir)498 ExternalCommand(cwd=self.repository.basedir, command=cmd).execute(subdir) 499 499 500 500 def _commit(self, date, author, patchname, changelog=None, entries=None): … … 518 518 entries = ['.'] 519 519 520 record = ExternalCommand(cwd=self. basedir, command=cmd)520 record = ExternalCommand(cwd=self.repository.basedir, command=cmd) 521 521 record.execute(input=self.repository.encode('\n'.join(logmessage))) 522 522 … … 537 537 # remove on items that are still there. 538 538 539 c = ExternalCommand(cwd=self. basedir,539 c = ExternalCommand(cwd=self.repository.basedir, 540 540 command=self.repository.command("remove")) 541 existing = [n for n in names if exists(join(self. basedir, n))]541 existing = [n for n in names if exists(join(self.repository.basedir, n))] 542 542 if existing: 543 543 c.execute(existing) … … 549 549 550 550 cmd = self.repository.command("mv") 551 ExternalCommand(cwd=self. basedir, command=cmd).execute(oldname, newname)551 ExternalCommand(cwd=self.repository.basedir, command=cmd).execute(oldname, newname) 552 552 553 553 def _prepareTargetRepository(self): … … 560 560 from vcpx.dualwd import IGNORED_METADIRS 561 561 562 metadir = join(self. basedir, '_darcs')562 metadir = join(self.repository.basedir, '_darcs') 563 563 prefsdir = join(metadir, 'prefs') 564 564 prefsname = join(prefsdir, 'prefs') … … 569 569 pname, pvalue = pref.split(' ', 1) 570 570 if pname == 'boringfile': 571 boringname = join(self. basedir, pvalue[:-1])571 boringname = join(self.repository.basedir, pvalue[:-1]) 572 572 573 573 if not exists(metadir): 574 574 cmd = self.repository.command("initialize") 575 init = ExternalCommand(cwd=self. basedir, command=cmd)575 init = ExternalCommand(cwd=self.repository.basedir, command=cmd) 576 576 init.execute() 577 577 … … 591 591 # Eventually omit our own log... 592 592 logfile = self.repository.projectref().logfile 593 if logfile.startswith(self. basedir):593 if logfile.startswith(self.repository.basedir): 594 594 ignored.append('^%s$' % 595 re.escape(logfile[len(self. basedir)+1:]))595 re.escape(logfile[len(self.repository.basedir)+1:])) 596 596 597 597 # ... and state file 598 598 sfname = self.repository.projectref().state_file.filename 599 if sfname.startswith(self. basedir):600 sfrelname = sfname[len(self. basedir)+1:]599 if sfname.startswith(self.repository.basedir): 600 sfrelname = sfname[len(self.repository.basedir)+1:] 601 601 ignored.append('^%s$' % re.escape(sfrelname)) 602 602 ignored.append('^%s$' % re.escape(sfrelname+'.old')) … … 624 624 from os.path import join 625 625 626 motd = open(join(self. basedir, '_darcs/prefs/motd'), 'w')626 motd = open(join(self.repository.basedir, '_darcs/prefs/motd'), 'w') 627 627 motd.write(MOTD % str(source_repo)) 628 628 motd.close() … … 676 676 if tag not in self._currentTags(): 677 677 cmd = self.repository.command("tag", "--author", "Unknown tagger") 678 ExternalCommand(cwd=self. basedir, command=cmd).execute(tag)678 ExternalCommand(cwd=self.repository.basedir, command=cmd).execute(tag) 679 679 680 680 def _currentTags(self): … … 698 698 "--from-match", "not name ^TAG", 699 699 "--xml-output", "--reverse") 700 changes = ExternalCommand(cwd=self. basedir, command=cmd)700 changes = ExternalCommand(cwd=self.repository.basedir, command=cmd) 701 701 output = changes.execute(stdout=PIPE, stderr=STDOUT)[0] 702 702 if changes.exit_status: -
vcpx/repository/svn.py
r1179 r1209 271 271 cmd = self.repository.command("log", "--verbose", "--xml", 272 272 "--revision", "%d:HEAD" % (sincerev+1)) 273 svnlog = ExternalCommand(cwd=self. basedir, command=cmd)273 svnlog = ExternalCommand(cwd=self.repository.basedir, command=cmd) 274 274 log = svnlog.execute('.', stdout=PIPE, TZ='UTC0')[0] 275 275 … … 305 305 cmd.append("--ignore-externals") 306 306 cmd.extend(["--revision", changeset.revision]) 307 svnup = ExternalCommand(cwd=self. basedir, command=cmd)307 svnup = ExternalCommand(cwd=self.repository.basedir, command=cmd) 308 308 309 309 retry = 0 … … 413 413 initial = False 414 414 415 if not exists(join(self. basedir, '.svn')):415 if not exists(join(self.repository.basedir, '.svn')): 416 416 self.log.debug("Checking out a working copy") 417 417 … … 424 424 out, err = svnco.execute("%s%s" % (self.repository.repository, 425 425 self.repository.module), 426 self. basedir, stdout=PIPE, stderr=PIPE)426 self.repository.basedir, stdout=PIPE, stderr=PIPE) 427 427 if svnco.exit_status: 428 428 raise TargetInitializationFailure( … … 432 432 else: 433 433 self.log.debug("%r already exists, assuming it's " 434 "a svn working dir", self. basedir)434 "a svn working dir", self.repository.basedir) 435 435 436 436 if not initial: … … 439 439 cmd = self.repository.command("log", "--verbose", "--xml", 440 440 "--revision", revision) 441 svnlog = ExternalCommand(cwd=self. basedir, command=cmd)441 svnlog = ExternalCommand(cwd=self.repository.basedir, command=cmd) 442 442 out, err = svnlog.execute(stdout=PIPE, stderr=PIPE) 443 443 … … 463 463 cmd = self.repository.command("add", "--quiet", "--no-auto-props", 464 464 "--non-recursive") 465 ExternalCommand(cwd=self. basedir, command=cmd).execute(names)465 ExternalCommand(cwd=self.repository.basedir, command=cmd).execute(names) 466 466 467 467 def _commit(self, date, author, patchname, changelog=None, entries=None): … … 494 494 495 495 cmd = self.repository.command("commit", "--file", rontf.name) 496 commit = ExternalCommand(cwd=self. basedir, command=cmd)496 commit = ExternalCommand(cwd=self.repository.basedir, command=cmd) 497 497 498 498 if not entries: … … 527 527 "--quiet", "--revprop", 528 528 "--revision", revision) 529 propset = ExternalCommand(cwd=self. basedir, command=cmd)529 propset = ExternalCommand(cwd=self.repository.basedir, command=cmd) 530 530 531 531 propset.execute(date.isoformat()+".000000Z", propname='svn:date') … … 537 537 cmd.extend(["--revision", revision]) 538 538 539 ExternalCommand(cwd=self. basedir, command=cmd).execute()539 ExternalCommand(cwd=self.repository.basedir, command=cmd).execute() 540 540 541 541 def _removePathnames(self, names): … … 545 545 546 546 cmd = self.repository.command("remove", "--quiet", "--force") 547 remove = ExternalCommand(cwd=self. basedir, command=cmd)547 remove = ExternalCommand(cwd=self.repository.basedir, command=cmd) 548 548 remove.execute(names) 549 549 … … 566 566 # svn's cp+rm is different from rm+add (cp preserves history). 567 567 unmoved = False 568 oldpath = join(self. basedir, oldname)569 newpath = join(self. basedir, newname)568 oldpath = join(self.repository.basedir, oldname) 569 newpath = join(self.repository.basedir, newname) 570 570 if not exists(oldpath): 571 571 try: … … 576 576 raise 577 577 unmoved = True 578 move = ExternalCommand(cwd=self. basedir, command=cmd)578 move = ExternalCommand(cwd=self.repository.basedir, command=cmd) 579 579 out, err = move.execute(oldname, newname, stdout=PIPE, stderr=PIPE) 580 580 if move.exit_status: … … 660 660 from os.path import join, exists 661 661 662 if not self.repository.repository or exists(join(self. basedir, '.svn')):662 if not self.repository.repository or exists(join(self.repository.basedir, '.svn')): 663 663 return 664 664 … … 669 669 svnco = ExternalCommand(command=cmd) 670 670 svnco.execute("%s%s" % (self.repository.repository, 671 self.repository.module), self. basedir)671 self.repository.module), self.repository.basedir) 672 672 673 673 def _initializeWorkingDir(self): … … 678 678 from os.path import exists, join 679 679 680 if not exists(join(self. basedir, '.svn')):681 raise TargetInitializationFailure("'%s' needs to be an SVN working copy already under SVN" % self. basedir)680 if not exists(join(self.repository.basedir, '.svn')): 681 raise TargetInitializationFailure("'%s' needs to be an SVN working copy already under SVN" % self.repository.basedir) 682 682 683 683 SynchronizableTargetWorkingDir._initializeWorkingDir(self) -
vcpx/dualwd.py
r1135 r1209 44 44 self.target = target_repo.workingDir() 45 45 46 sbdir = self.source. basedir.rstrip(sep)+sep47 tbdir = self.target. basedir.rstrip(sep)+sep46 sbdir = self.source.repository.basedir.rstrip(sep)+sep 47 tbdir = self.target.repository.basedir.rstrip(sep)+sep 48 48 if sbdir == tbdir: 49 49 shared = True … … 119 119 120 120 rsync = ExternalCommand(command=cmd) 121 rsync.execute(self.source. basedir+'/', self.target.basedir)121 rsync.execute(self.source.repository.basedir+'/', self.target.repository.basedir) -
vcpx/repository/cvs.py
r1186 r1209 563 563 564 564 branch = None 565 fname = join(self. basedir, 'CVS', 'Tag')565 fname = join(self.repository.basedir, 'CVS', 'Tag') 566 566 if exists(fname): 567 567 tag = open(fname).read() -
vcpx/repository/monotone.py
r1179 r1209 610 610 def _applyChangeset(self, changeset): 611 611 cmd = self.repository.command("update", "--revision", changeset.revision) 612 mtl = ExternalCommand(cwd=self. basedir, command=cmd)612 mtl = ExternalCommand(cwd=self.repository.basedir, command=cmd) 613 613 mtl.execute() 614 614 if mtl.exit_status: … … 616 616 "status %s" % mtl.exit_status) 617 617 mtr = MonotoneRevToCset(repository=self.repository, 618 working_dir=self. basedir,618 working_dir=self.repository.basedir, 619 619 branch=self.repository.module) 620 620 mtr.updateCset( changeset ) … … 629 629 self.repository.module, revision, 630 630 self.repository.rootdir) 631 if not exists(join(self. basedir, '_MTN')):631 if not exists(join(self.repository.basedir, '_MTN')): 632 632 633 633 # actually check out the revision … … 637 637 "--revision", effrev, 638 638 "--branch", self.repository.module, 639 self. basedir)639 self.repository.basedir) 640 640 mtl = ExternalCommand(cwd=self.repository.rootdir, command=cmd) 641 641 mtl.execute() … … 645 645 else: 646 646 self.log.debug("%r already exists, assuming it's a monotone " 647 "working dir already populated", self. basedir)647 "working dir already populated", self.repository.basedir) 648 648 649 649 … … 657 657 # linearized ancestor, changeset entries will NOT be filled 658 658 mtr = MonotoneRevToCset(repository=self.repository, 659 working_dir=self. basedir,659 working_dir=self.repository.basedir, 660 660 branch=self.repository.module) 661 661 mtr.updateCset(chset) … … 671 671 fnames=[] 672 672 for fn in names: 673 if isdir(join(self. basedir, fn)):673 if isdir(join(self.repository.basedir, fn)): 674 674 self.log.debug("ignoring addition of directory %r", fn) 675 675 else: … … 678 678 # ok, we still have something to add 679 679 cmd = self.repository.command("add") 680 add = ExternalCommand(cwd=self. basedir, command=cmd)680 add = ExternalCommand(cwd=self.repository.basedir, command=cmd) 681 681 add.execute(fnames) 682 682 if add.exit_status: … … 690 690 """ 691 691 cmd = self.repository.command("add") 692 add = ExternalCommand(cwd=self. basedir, command=cmd)692 add = ExternalCommand(cwd=self.repository.basedir, command=cmd) 693 693 add.execute(subdir) 694 694 if add.exit_status: … … 718 718 "--date", date.isoformat(), 719 719 "--message-file", rontf.name) 720 commit = ExternalCommand(cwd=self. basedir, command=cmd)720 commit = ExternalCommand(cwd=self.repository.basedir, command=cmd) 721 721 722 722 entries = None … … 743 743 744 744 cmd = self.repository.command("drop") 745 drop = ExternalCommand(cwd=self. basedir, command=cmd)745 drop = ExternalCommand(cwd=self.repository.basedir, command=cmd) 746 746 dum, error = drop.execute(names, stderr=PIPE) 747 747 if drop.exit_status: … … 759 759 # and monotone doesn't like it. 760 760 # we put names back to make it happy ... 761 # if access(join(self. basedir, newname), F_OK):762 # if access(join(self. basedir, oldname), F_OK):761 # if access(join(self.repository.basedir, newname), F_OK): 762 # if access(join(self.repository.basedir, oldname), F_OK): 763 763 # raise ChangesetApplicationFailure("Can't rename %s to %s. " 764 764 # "Both names already exist" % 765 765 # (oldname, newname)) 766 # renames(join(self. basedir, newname), join(self.basedir, oldname))766 # renames(join(self.repository.basedir, newname), join(self.repository.basedir, oldname)) 767 767 # self.log.debug('Renamed "%s" back to "%s"', newname, oldname) 768 768 769 769 cmd = self.repository.command("rename") 770 rename = ExternalCommand(cwd=self. basedir, command=cmd)770 rename = ExternalCommand(cwd=self.repository.basedir, command=cmd) 771 771 rename.execute(oldname, newname) 772 772 773 773 # redo the rename ... 774 # renames(join(self. basedir, oldname), join(self.basedir, newname))774 # renames(join(self.repository.basedir, oldname), join(self.repository.basedir, newname)) 775 775 # if rename.exit_status: 776 776 # raise ChangesetApplicationFailure("%s returned status %s" % … … 843 843 from re import escape 844 844 845 if not self.repository.repository or exists(join(self. basedir, '_MTN')):845 if not self.repository.repository or exists(join(self.repository.basedir, '_MTN')): 846 846 return 847 847 … … 860 860 861 861 setup = ExternalCommand(command=cmd) 862 setup.execute(self. basedir)862 setup.execute(self.repository.basedir) 863 863 864 864 if self.repository.passphrase or self.repository.custom_lua: 865 monotonerc = open(join(self. basedir, '_MTN', 'monotonerc'), 'w')865 monotonerc = open(join(self.repository.basedir, '_MTN', 'monotonerc'), 'w') 866 866 if self.repository.passphrase: 867 867 monotonerc.write(MONOTONERC % self.repository.passphrase) … … 877 877 ignored = [] 878 878 logfile = self.repository.projectref().logfile 879 if logfile.startswith(self. basedir):879 if logfile.startswith(self.repository.basedir): 880 880 ignored.append('^%s$' % 881 escape(logfile[len(self. basedir)+1:]))881 escape(logfile[len(self.repository.basedir)+1:])) 882 882 883 883 sfname = self.repository.projectref().state_file.filename 884 if sfname.startswith(self. basedir):885 sfrelname = sfname[len(self. basedir)+1:]884 if sfname.startswith(self.repository.basedir): 885 sfrelname = sfname[len(self.repository.basedir)+1:] 886 886 ignored.append('^%s$' % escape(sfrelname)) 887 887 ignored.append('^%s$' % escape(sfrelname + '.old')) … … 889 889 890 890 if len(ignored) > 0: 891 mt_ignored = open(join(self. basedir, '.mtn-ignore'), 'aU')891 mt_ignored = open(join(self.repository.basedir, '.mtn-ignore'), 'aU') 892 892 mt_ignored.write('\n'.join(ignored)) 893 893 mt_ignored.close() … … 904 904 """ 905 905 906 if not exists(join(self. basedir, '_MTN')):906 if not exists(join(self.repository.basedir, '_MTN')): 907 907 raise TargetInitializationFailure("Please setup '%s' as a " 908 908 "monotone working directory" % 909 self. basedir)909 self.repository.basedir) 910 910 911 911 SynchronizableTargetWorkingDir._initializeWorkingDir(self) -
vcpx/repository/cdv.py
r1179 r1209 39 39 names = [e.name for e in changeset.modifiedEntries()] 40 40 cmd = self.repository.command("edit") 41 ExternalCommand(cwd=self. basedir, command=cmd).execute(names)41 ExternalCommand(cwd=self.repository.basedir, command=cmd).execute(names) 42 42 43 43 def _addPathnames(self, names): … … 47 47 48 48 cmd = self.repository.command("add") 49 ExternalCommand(cwd=self. basedir, command=cmd).execute(names)49 ExternalCommand(cwd=self.repository.basedir, command=cmd).execute(names) 50 50 51 51 def _commit(self, date, author, patchname, changelog=None, entries=None): … … 69 69 entries = ['...'] 70 70 71 c = ExternalCommand(cwd=self. basedir, command=cmd)71 c = ExternalCommand(cwd=self.repository.basedir, command=cmd) 72 72 c.execute(entries) 73 73 … … 82 82 83 83 cmd = self.repository.command("remove") 84 ExternalCommand(cwd=self. basedir, command=cmd).execute(names)84 ExternalCommand(cwd=self.repository.basedir, command=cmd).execute(names) 85 85 86 86 def _renamePathname(self, oldname, newname): … … 90 90 91 91 cmd = self.repository.command("rename") 92 ExternalCommand(cwd=self. basedir, command=cmd).execute(oldname, newname)92 ExternalCommand(cwd=self.repository.basedir, command=cmd).execute(oldname, newname) 93 93 94 94 def _prepareTargetRepository(self): … … 101 101 from os.path import join, exists 102 102 103 if not exists(join(self. basedir, self.repository.METADIR)):104 init = ExternalCommand(cwd=self. basedir,103 if not exists(join(self.repository.basedir, self.repository.METADIR)): 104 init = ExternalCommand(cwd=self.repository.basedir, 105 105 command=self.repository.command("init")) 106 106 init.execute() … … 119 119 cmd = self.repository.command("set", "user") 120 120 user = getenv('CDV_USER') or getenv('LOGNAME') 121 ExternalCommand(cwd=self. basedir, command=cmd).execute(user)121 ExternalCommand(cwd=self.repository.basedir, command=cmd).execute(user) -
vcpx/repository/__init__.py
r1207 r1209 57 57 from logging import getLogger 58 58 from weakref import ref 59 from os.path import join, normpath 59 60 60 61 self.name = name … … 65 66 self._load(project) 66 67 self._validateConfiguration() 68 69 if self.subdir: 70 self.basedir = normpath(join(self.rootdir, self.subdir)) 71 else: 72 self.basedir = self.rootdir 67 73 68 74 def __str__(self): -
vcpx/repository/arx.py
r1179 r1209 37 37 38 38 cmd = self.repository.command("add") 39 ExternalCommand(cwd=self. basedir, command=cmd).execute(names)39 ExternalCommand(cwd=self.repository.basedir, command=cmd).execute(names) 40 40 41 41 def _commit(self, date, author, patchname, changelog=None, entries=None): … … 56 56 "--author", encode(author), 57 57 "--date", date.isoformat()) 58 c = ExternalCommand(cwd=self. basedir, command=cmd)58 c = ExternalCommand(cwd=self.repository.basedir, command=cmd) 59 59 c.execute() 60 60 … … 69 69 70 70 cmd = self.repository.command("rm") 71 ExternalCommand(cwd=self. basedir, command=cmd).execute(names)71 ExternalCommand(cwd=self.repository.basedir, command=cmd).execute(names) 72 72 73 73 def _renamePathname(self, oldname, newname): … … 77 77 78 78 cmd = self.repository.command("copy") 79 rename = ExternalCommand(cwd=self. basedir, command=cmd)79 rename = ExternalCommand(cwd=self.repository.basedir, command=cmd) 80 80 rename.execute(oldname, newname) 81 81 … … 92 92 from os.path import exists, join 93 93 94 if not exists(join(self. basedir, '_arx')):95 raise TargetInitializationFailure("Please setup '%s' as an ArX working directory" % self. basedir)94 if not exists(join(self.repository.basedir, '_arx')): 95 raise TargetInitializationFailure("Please setup '%s' as an ArX working directory" % self.repository.basedir) 96 96 97 97 SynchronizableTargetWorkingDir._initializeWorkingDir(self) -
vcpx/workdir.py
r940 r1209 18 18 19 19 def __init__(self, repository): 20 from os.path import join, normpath21 20 from logging import getLogger 22 21 23 22 self.repository = repository 24 if repository.subdir:25 self.basedir = normpath(join(repository.rootdir, repository.subdir))26 else:27 self.basedir = repository.rootdir28 23 self.log = getLogger('tailor.%s.%s' % (self.__class__.__name__, 29 24 repository.name)) -
vcpx/repository/tla.py
r1179 r1209 78 78 self.fqversion = '/'.join([self.repository.repository, 79 79 self.repository.module]) 80 c = ExternalCommand(cwd=self. basedir,80 c = ExternalCommand(cwd=self.repository.basedir, 81 81 command=self.repository.command("missing", "-f")) 82 82 out, err = c.execute(stdout=PIPE, stderr=PIPE) … … 113 113 fqrev = self.__initial_revision(revision) 114 114 if self.shared_basedirs: 115 tempdir = mkdtemp("", ",,tailor-", self. basedir)115 tempdir = mkdtemp("", ",,tailor-", self.repository.basedir) 116 116 try: 117 117 self.__checkout_initial_revision(fqrev, tempdir, "t") … … 121 121 for e in os.listdir(newtree): 122 122 os.rename(os.path.join(newtree, e), 123 os.path.join(self. basedir, e))123 os.path.join(self.repository.basedir, e)) 124 124 os.rmdir(newtree) 125 125 os.rmdir(tempdir) 126 126 else: 127 root, destdir = os.path.split(self. basedir)127 root, destdir = os.path.split(self.repository.basedir) 128 128 self.__checkout_initial_revision(fqrev, root, destdir) 129 129 return self.__parse_revision_logs([fqrev], False)[0] … … 143 143 144 144 def __apply_changeset(self, changeset): 145 c = ExternalCommand(cwd=self. basedir,145 c = ExternalCommand(cwd=self.repository.basedir, 146 146 command=self.repository.command("update")) 147 147 out, err = c.execute(changeset.revision, stdout=PIPE, stderr=PIPE) … … 187 187 changesets = [] 188 188 logparser = Parser() 189 c = ExternalCommand(cwd=self. basedir,189 c = ExternalCommand(cwd=self.repository.basedir, 190 190 command=self.repository.command("cat-archive-log")) 191 191 for fqrev in fqrevlist: … … 223 223 224 224 def __hide_foreign_entries(self): 225 c = ExternalCommand(cwd=self. basedir,225 c = ExternalCommand(cwd=self.repository.basedir, 226 226 command=self.repository.command("tree-lint", "-tu")) 227 227 out = c.execute(stdout=PIPE)[0] 228 tempdir = mkdtemp("", "++tailor-", self. basedir)228 tempdir = mkdtemp("", "++tailor-", self.repository.basedir) 229 229 try: 230 230 for e in out: … … 234 234 if ht[0] and ht[1]: 235 235 continue 236 os.rename(os.path.join(self. basedir, e),236 os.rename(os.path.join(self.repository.basedir, e), 237 237 os.path.join(tempdir, e)) 238 238 except: … … 243 243 def __restore_foreign_entries(self, tempdir): 244 244 for e in os.listdir(tempdir): 245 os.rename(os.path.join(tempdir, e), os.path.join(self. basedir, e))245 os.rename(os.path.join(tempdir, e), os.path.join(self.repository.basedir, e)) 246 246 os.rmdir(tempdir) 247 247 -
vcpx/repository/bzr.py
r1204 r1209 54 54 self._working_tree = None 55 55 try: 56 bzrdir = BzrDir.open(self. basedir)56 bzrdir = BzrDir.open(self.repository.basedir) 57 57 wt = self._working_tree = bzrdir.open_workingtree() 58 58 … … 69 69 logfile = self.repository.projectref().logfile 70 70 dir, file = split(logfile) 71 if dir == self. basedir:71 if dir == self.repository.basedir: 72 72 self.ignored.append(file) 73 73 … … 75 75 sfname = self.repository.projectref().state_file.filename 76 76 dir, file = split(sfname) 77 if dir == self. basedir:77 if dir == self.repository.basedir: 78 78 self.ignored.append(file) 79 79 self.ignored.append(file+'.old') … … 172 172 173 173 self.log.info('Extracting %r out of %r in %r...', 174 revid, parent_bzrdir.root_transport.base, self. basedir)175 bzrdir = parent_bzrdir.sprout(self. basedir, revid)174 revid, parent_bzrdir.root_transport.base, self.repository.basedir) 175 bzrdir = parent_bzrdir.sprout(self.repository.basedir, revid) 176 176 self._working_tree = bzrdir.open_workingtree() 177 177 … … 183 183 def _addPathnames(self, names): 184 184 if len(names): 185 names = [ pathjoin(self. basedir, n) for n in names ]185 names = [ pathjoin(self.repository.basedir, n) for n in names ] 186 186 smart_add_tree(self._working_tree, names, recurse=False) 187 187 188 188 def _addSubtree(self, subdir): 189 subdir = pathjoin(self. basedir, subdir)189 subdir = pathjoin(self.repository.basedir, subdir) 190 190 added, ignored = smart_add_tree(self._working_tree, [subdir], recurse=True) 191 191 … … 260 260 # bzr does the rename itself as well 261 261 unmoved = False 262 oldpath = join(self. basedir, oldname)263 newpath = join(self. basedir, newname)262 oldpath = join(self.repository.basedir, oldname) 263 newpath = join(self.repository.basedir, newname) 264 264 if not exists(oldpath): 265 265 try: … … 287 287 """ 288 288 if self._working_tree is None: 289 self.log.info('Initializing new repository in %r...', self. basedir)289 self.log.info('Initializing new repository in %r...', self.repository.basedir) 290 290 try: 291 bzrdir = BzrDir.open(self. basedir)291 bzrdir = BzrDir.open(self.repository.basedir) 292 292 except errors.NotBranchError: 293 293 # really a NotBzrDir error... 294 branch = BzrDir.create_branch_convenience(self. basedir,294 branch = BzrDir.create_branch_convenience(self.repository.basedir, 295 295 force_new_tree=True) 296 296 self._working_tree = branch.bzrdir.open_workingtree() -
vcpx/repository/cg.py
r1179 r1209 40 40 # them out. 41 41 42 notdirs = [n for n in names if not isdir(join(self. basedir, n))]42 notdirs = [n for n in names if not isdir(join(self.repository.basedir, n))] 43 43 if notdirs: 44 44 cmd = self.repository.command("add") 45 ExternalCommand(cwd=self. basedir, command=cmd).execute(notdirs)45 ExternalCommand(cwd=self.repository.basedir, command=cmd).execute(notdirs) 46 46 47 47 def __parse_author(self, author): … … 92 92 # shouldn't be a problem. 93 93 cmd = self.repository.command("commit", "-f") 94 c = ExternalCommand(cwd=self. basedir, command=cmd)94 c = ExternalCommand(cwd=self.repository.basedir, command=cmd) 95 95 96 96 c.execute(env=env, input=encode('\n'.join(logmessage))) … … 108 108 # them out. 109 109 110 notdirs = [n for n in names if not isdir(join(self. basedir, n))]110 notdirs = [n for n in names if not isdir(join(self.repository.basedir, n))] 111 111 if notdirs: 112 112 cmd = self.repository.command("rm") 113 c=ExternalCommand(cwd=self. basedir, command=cmd)113 c=ExternalCommand(cwd=self.repository.basedir, command=cmd) 114 114 c.execute(notdirs) 115 115 … … 125 125 from vcpx.dualwd import IGNORED_METADIRS 126 126 127 if isdir(join(self. basedir, newname)):127 if isdir(join(self.repository.basedir, newname)): 128 128 # Given lack of support for directories in current Git, 129 129 # loop over all files under the new directory and 130 130 # do a add/remove on them. 131 skip = len(self. basedir)+len(newname)+2132 for dir, subdirs, files in walk(join(self. basedir, newname)):131 skip = len(self.repository.basedir)+len(newname)+2 132 for dir, subdirs, files in walk(join(self.repository.basedir, newname)): 133 133 prefix = dir[skip:] 134 134 … … 151 151 from os.path import join, exists 152 152 153 if not exists(join(self. basedir, self.repository.METADIR)):153 if not exists(join(self.repository.basedir, self.repository.METADIR)): 154 154 cmd = self.repository.command("init", "-I") 155 init = ExternalCommand(cwd=self. basedir, command=cmd)155 init = ExternalCommand(cwd=self.repository.basedir, command=cmd) 156 156 init.execute() 157 157 … … 170 170 # Create the .git/info/exclude file, that contains an 171 171 # fnmatch per line with metadirs to be skipped. 172 ignore = open(join(self. basedir, self.repository.METADIR,172 ignore = open(join(self.repository.basedir, self.repository.METADIR, 173 173 'info', 'exclude'), 'a') 174 174 ignore.write('\n') … … 176 176 for md in IGNORED_METADIRS])) 177 177 ignore.write('\n') 178 if self.logfile.startswith(self. basedir):179 ignore.write(self.logfile[len(self. basedir)+1:])178 if self.logfile.startswith(self.repository.basedir): 179 ignore.write(self.logfile[len(self.repository.basedir)+1:]) 180 180 ignore.write('\n') 181 if self.state_file.filename.startswith(self. basedir):182 sfrelname = self.state_file.filename[len(self. basedir)+1:]181 if self.state_file.filename.startswith(self.repository.basedir): 182 sfrelname = self.state_file.filename[len(self.repository.basedir)+1:] 183 183 ignore.write(sfrelname) 184 184 ignore.write('\n') -
vcpx/repository/git.py
r1206 r1209 87 87 def _tryCommand(self, cmd, exception=Exception, pipe=True): 88 88 c = GitExternalCommand(self.repository, 89 command = self.repository.command(*cmd), cwd = self. basedir)89 command = self.repository.command(*cmd), cwd = self.repository.basedir) 90 90 if pipe: 91 91 output = c.execute(stdout=PIPE)[0] … … 109 109 # handle HEAD (master) as a special case... 110 110 # git clone won't checkout into an existing directory 111 target = join(self. basedir, '.gittmp')111 target = join(self.repository.basedir, '.gittmp') 112 112 # might want -s if we can determine that the path is local. Then again, 113 113 # that makes it a little unsafe to do git write actions here … … 115 115 ChangesetApplicationFailure, False) 116 116 117 rename(join(target, '.git'), join(self. basedir, '.git'))117 rename(join(target, '.git'), join(self.repository.basedir, '.git')) 118 118 rmdir(target) 119 119 … … 210 210 211 211 tags = [] 212 tagdir = join(self. basedir, '.git', 'refs', 'tags')212 tagdir = join(self.repository.basedir, '.git', 'refs', 'tags') 213 213 try: 214 214 for tag in listdir(tagdir): … … 242 242 # them out. 243 243 244 notdirs = [n for n in names if not isdir(join(self. basedir, n))]244 notdirs = [n for n in names if not isdir(join(self.repository.basedir, n))] 245 245 if notdirs: 246 246 self._tryCommand(['update-index', '--add'] + notdirs) … … 295 295 296 296 # find the previous commit on the branch if any 297 c = GitExternalCommand(self.repository, cwd=self. basedir,297 c = GitExternalCommand(self.repository, cwd=self.repository.basedir, 298 298 command=self.repository.command('rev-parse', refname)) 299 299 (out, err) = c.execute(stdout=PIPE, stderr=PIPE) … … 321 321 else: 322 322 cmd = self.repository.command('commit-tree', treeid) 323 c = GitExternalCommand(self.repository, cwd=self. basedir, command=cmd)323 c = GitExternalCommand(self.repository, cwd=self.repository.basedir, command=cmd) 324 324 325 325 logmessage = encode('\n'.join(logmessage)) … … 349 349 # Allow a new tag to overwrite an older one with -f 350 350 cmd = self.repository.command("tag", "-f", tag) 351 c = GitExternalCommand(self.repository, cwd=self. basedir, command=cmd)351 c = GitExternalCommand(self.repository, cwd=self.repository.basedir, command=cmd) 352 352 c.execute() 353 353 … … 366 366 # them out. 367 367 368 notdirs = [n for n in names if not isdir(join(self. basedir, n))]368 notdirs = [n for n in names if not isdir(join(self.repository.basedir, n))] 369 369 if notdirs: 370 370 self._tryCommand(['update-index', '--remove'] + notdirs) … … 381 381 from vcpx.dualwd import IGNORED_METADIRS 382 382 383 if isdir(join(self. basedir, newname)):383 if isdir(join(self.repository.basedir, newname)): 384 384 # Given lack of support for directories in current Git, 385 385 # loop over all files under the new directory and 386 386 # do a add/remove on them. 387 skip = len(self. basedir)+len(newname)+2388 for dir, subdirs, files in walk(join(self. basedir, newname)):387 skip = len(self.repository.basedir)+len(newname)+2 388 for dir, subdirs, files in walk(join(self.repository.basedir, newname)): 389 389 prefix = dir[skip:] 390 390 … … 408 408 from os.path import join, exists 409 409 410 if not exists(join(self. basedir, self.repository.METADIR)):410 if not exists(join(self.repository.basedir, self.repository.METADIR)): 411 411 if self.repository.PARENT_REPO: 412 412 cmd = self.repository.command("clone", "--shared", "-n", 413 413 self.repository.PARENT_REPO, 'tmp') 414 clone = GitExternalCommand(self.repository, cwd=self. basedir, command=cmd)414 clone = GitExternalCommand(self.repository, cwd=self.repository.basedir, command=cmd) 415 415 clone.execute() 416 416 if clone.exit_status: … … 422 422 423 423 cmd = self.repository.command("reset", "--soft", self.repository.BRANCHPOINT) 424 reset = GitExternalCommand(self.repository, cwd=self. basedir, command=cmd)424 reset = GitExternalCommand(self.repository, cwd=self.repository.basedir, command=cmd) 425 425 reset.execute() 426 426 if reset.exit_status: … … 432 432 433 433 # initialization of a new branch in single-repository mode 434 mkdir(join(self. basedir, self.repository.METADIR))434 mkdir(join(self.repository.basedir, self.repository.METADIR)) 435 435 436 436 bp = self._tryCommand(['rev-parse', self.repository.BRANCHPOINT], … … 441 441 442 442 else: 443 if exists(join(self. basedir, self.repository.storagedir)):443 if exists(join(self.repository.basedir, self.repository.storagedir)): 444 444 raise TargetInitializationFailure( 445 445 "Repository %s already exists - " … … 450 450 # in this mode, the db is not stored in working dir, so we 451 451 # have to create .git ourselves 452 mkdir(join(self. basedir, self.repository.METADIR))452 mkdir(join(self.repository.basedir, self.repository.METADIR)) 453 453 454 454 def _prepareWorkingDirectory(self, source_repo): … … 462 462 463 463 # create info/excludes in storagedir 464 infodir = join(self. basedir, self.repository.storagedir, 'info')464 infodir = join(self.repository.basedir, self.repository.storagedir, 'info') 465 465 if not exists(infodir): 466 466 mkdir(infodir) … … 473 473 for md in IGNORED_METADIRS])) 474 474 ignore.write('\n') 475 if self.logfile.startswith(self. basedir):476 ignore.write(self.logfile[len(self. basedir)+1:])475 if self.logfile.startswith(self.repository.basedir): 476 ignore.write(self.logfile[len(self.repository.basedir)+1:]) 477 477 ignore.write('\n') 478 if self.state_file.filename.startswith(self. basedir):479 sfrelname = self.state_file.filename[len(self. basedir)+1:]478 if self.state_file.filename.startswith(self.repository.basedir): 479 sfrelname = self.state_file.filename[len(self.repository.basedir)+1:] 480 480 ignore.write(sfrelname) 481 481 ignore.write('\n') -
vcpx/repository/hg.py
r1193 r1209 61 61 62 62 # If the basedir does not exist, create it 63 if not exists(self. basedir):64 mkdir(self. basedir)63 if not exists(self.repository.basedir): 64 mkdir(self.repository.basedir) 65 65 66 66 # clone it only if .hg does not exist 67 if not exists(join(self. basedir, ".hg")):67 if not exists(join(self.repository.basedir, ".hg")): 68 68 # Hg won't check out into an existing directory 69 checkoutdir = join(self. basedir,".hgtmp")69 checkoutdir = join(self.repository.basedir,".hgtmp") 70 70 opts = self._defaultOpts('clone') 71 71 opts['noupdate'] = True 72 72 commands.clone(self._ui, self.repository.repository, checkoutdir, 73 73 **opts) 74 rename(join(checkoutdir, ".hg"), join(self. basedir,".hg"))74 rename(join(checkoutdir, ".hg"), join(self.repository.basedir,".hg")) 75 75 rmdir(checkoutdir) 76 76 else: 77 77 # Does hgrc exist? If not, we write one 78 hgrc = join(self. basedir, ".hg", "hgrc")78 hgrc = join(self.repository.basedir, ".hg", "hgrc") 79 79 if not exists(hgrc): 80 80 hgrc = file(hgrc, "w") … … 88 88 89 89 self.log.info('Extracting revision %r from %r into %r', 90 revision, self.repository.repository, self. basedir)90 revision, self.repository.repository, self.repository.basedir) 91 91 repo.update(node) 92 92 … … 208 208 209 209 ui = self._getUI() 210 self._hg = hg.repository(ui=ui, path=realpath(self. basedir),210 self._hg = hg.repository(ui=ui, path=realpath(self.repository.basedir), 211 211 create=False) 212 212 # Pick up repository-specific UI settings. … … 246 246 247 247 notdirs = [n for n in names 248 if not isdir(join(self. basedir, normpath(n)))]248 if not isdir(join(self.repository.basedir, normpath(n)))] 249 249 if notdirs: 250 250 self.log.info('Adding %s...', ', '.join(notdirs)) … … 312 312 cmd = getattr(commands, cmd) 313 313 cwd = os.getcwd() 314 os.chdir(self. basedir)314 os.chdir(self.repository.basedir) 315 315 try: 316 316 cmd(self._ui, self._hg, *args, **allopts) … … 344 344 345 345 self.log.info('Renaming %r to %r...', oldname, newname) 346 if isdir(join(self. basedir, normpath(newname))):346 if isdir(join(self.repository.basedir, normpath(newname))): 347 347 # Given lack of support for directories in current HG, 348 348 # loop over all files under the old directory and … … 366 366 self._getUI() 367 367 368 if exists(join(self. basedir, self.repository.METADIR)):368 if exists(join(self.repository.basedir, self.repository.METADIR)): 369 369 create = 0 370 370 else: 371 371 create = 1 372 self.log.info('Initializing new repository in %r...', self. basedir)373 self._hg = hg.repository(ui=self._ui, path=realpath(self. basedir),372 self.log.info('Initializing new repository in %r...', self.repository.basedir) 373 self._hg = hg.repository(ui=self._ui, path=realpath(self.repository.basedir), 374 374 create=create) 375 375 … … 385 385 # Create the .hgignore file, that contains a regexp per line 386 386 # with all known VCs metadirs to be skipped. 387 ignore = open(join(self. basedir, '.hgignore'), 'w')387 ignore = open(join(self.repository.basedir, '.hgignore'), 'w') 388 388 ignore.write('\n'.join(['(^|/)%s($|/)' % escape(md) 389 389 for md in IGNORED_METADIRS])) 390 390 ignore.write('\n') 391 if self.logfile.startswith(self. basedir):391 if self.logfile.startswith(self.repository.basedir): 392 392 ignore.write('^') 393 ignore.write(self.logfile[len(self. basedir)+1:])393 ignore.write(self.logfile[len(self.repository.basedir)+1:]) 394 394 ignore.write('$\n') 395 if self.state_file.filename.startswith(self. basedir):396 sfrelname = self.state_file.filename[len(self. basedir)+1:]395 if self.state_file.filename.startswith(self.repository.basedir): 396 sfrelname = self.state_file.filename[len(self.repository.basedir)+1:] 397 397 ignore.write('^') 398 398 ignore.write(sfrelname)
Note: See TracChangeset
for help on using the changeset viewer.
