6381 |
6381 |
6382 To avoid permanent data loss, rollback will refuse to rollback a |
6382 To avoid permanent data loss, rollback will refuse to rollback a |
6383 commit transaction if it isn't checked out. Use --force to |
6383 commit transaction if it isn't checked out. Use --force to |
6384 override this protection. |
6384 override this protection. |
6385 |
6385 |
|
6386 The rollback command can be entirely disabled by setting the |
|
6387 ``ui.rollback`` configuration setting to false. If you're here |
|
6388 because you want to use rollback and it's disabled, you can |
|
6389 re-enable the command by setting ``ui.rollback`` to true. |
|
6390 |
6386 This command is not intended for use on public repositories. Once |
6391 This command is not intended for use on public repositories. Once |
6387 changes are visible for pull by other users, rolling a transaction |
6392 changes are visible for pull by other users, rolling a transaction |
6388 back locally is ineffective (someone else may already have pulled |
6393 back locally is ineffective (someone else may already have pulled |
6389 the changes). Furthermore, a race is possible with readers of the |
6394 the changes). Furthermore, a race is possible with readers of the |
6390 repository; for example an in-progress pull from the repository |
6395 repository; for example an in-progress pull from the repository |
6391 may fail if a rollback is performed. |
6396 may fail if a rollback is performed. |
6392 |
6397 |
6393 Returns 0 on success, 1 if no rollback data is available. |
6398 Returns 0 on success, 1 if no rollback data is available. |
6394 """ |
6399 """ |
|
6400 if not ui.configbool('ui', 'rollback', True): |
|
6401 raise error.Abort(_('rollback is disabled because it is unsafe'), |
|
6402 hint=('see `hg help -v rollback` for information')) |
6395 return repo.rollback(dryrun=opts.get('dry_run'), |
6403 return repo.rollback(dryrun=opts.get('dry_run'), |
6396 force=opts.get('force')) |
6404 force=opts.get('force')) |
6397 |
6405 |
6398 @command('root', []) |
6406 @command('root', []) |
6399 def root(ui, repo): |
6407 def root(ui, repo): |