com.ibm.xtools.umldt.rt.api.egit.merge

Interface RTEGitRebaseCommand

  • All Superinterfaces:
    RTAbstractCommand
    All Known Implementing Classes:
    RTEGitRebaseCommandImpl


    public interface RTEGitRebaseCommand
    extends RTAbstractCommand
    Defines interface for EGit Rebase command.

    This command can perform rebase/abort/continue operations as described in Git documentation. The command is executed in background and client needs to use completion callback to track result. The command is executed as WorkspaceJob thus calling the command from context of WorkspaceModifyOperation may result in lock/hanging.

    When external IProgressMonitor is provided the command is executed as system job without additional progress dialog.

    • To start rebase client needs to call command with specified upstream branch name and repository.
    • To continue rebase client needs to call command with operation Operation.CONTINUE and repository.
    • To abort rebase client needs to call command with operation Operation.ABORT and repository.
    • To skip current commit client needs to call command with operation Operation.SKIP and repository.

    Client can also use command to start interactive rebase by means of setInteractive(true).

    Author:
    seroshki
    • Method Detail

      • setRepository

        RTEGitRebaseCommand setRepository(File repository)
        Set path to existing Git repository
        Parameters:
        repository - - path to Git repository. Path may or may not include '.git' folder. Paths '/dir1/dir2/dir3' and '/dir1/dir2/dir3/.git' are considered the same
      • setInteractive

        RTEGitRebaseCommand setInteractive(boolean interactive)
        Set interactive mode for the rebase
        Parameters:
        interactive -
      • setUpstream

        RTEGitRebaseCommand setUpstream(String ref)
        Set upstream branch
        Parameters:
        ref - - branch name, reference or commit id
      • setPreserveMerges

        RTEGitRebaseCommand setPreserveMerges(boolean preserve)
        True to re-create merges during rebase. Defaults to false, a flattening rebase.
        Parameters:
        preserve -
      • setAutoImport

        RTEGitRebaseCommand setAutoImport(boolean autoImport)
        Perform auto-import of affected project during rebase. Default value: disabled
        Parameters:
        autoImport -
      • setPartialMode

        RTEGitRebaseCommand setPartialMode(boolean partialMode)
        Enables/disables partial mode. This option has meaning only when using closure or logical merge.

        Partial mode allows to save partially merged models and mark as conflicting only really conflicting files.

        Default value: disabled
        Parameters:
        partialMode -
      • setOperation

        RTEGitRebaseCommand setOperation(org.eclipse.jgit.api.RebaseCommand.Operation operation)
        Set current rebase operation. Default value: BEGIN
        Parameters:
        operation - - RebaseCommand.Operation
      • setClosureFilter

        RTEGitRebaseCommand setClosureFilter(String filter)
        Defines filter for closure operation. The filter will be used to group UML models into closure. All resources matching filter will be processed as single closure. If closure filter is not specified, the entire workspace will be use as closure
        Parameters:
        filter - - comma-separated list of paths. Each path may include '*' or '?' symbols
      • setClosureFilter

        RTEGitRebaseCommand setClosureFilter(IClosureFilter filter)
        Defines filter for closure operation. The filter will be used to group UML models into closure. All resources matching filter will be processed as single closure. If closure filter is not specified, the entire workspace will be use as closure
        Parameters:
        filter - - an object implementing IClosureFilter interface
      • setProgressMonitor

        RTEGitRebaseCommand setProgressMonitor(org.eclipse.core.runtime.IProgressMonitor monitor)
        Set progress monitor for operation. Setting not-null monitor will run all operations in non-user mode.
        Parameters:
        monitor - - IProgressMonitor