:github_url: hide .. DO NOT EDIT THIS FILE!!! .. Generated automatically from Godot engine sources. .. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py. .. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/EditorVCSInterface.xml. .. _class_EditorVCSInterface: EditorVCSInterface ================== **Inherits:** :ref:`Object` Version Control System (VCS) interface, which reads and writes to the local VCS in use. .. rst-class:: classref-introduction-group Description ----------- Defines the API that the editor uses to extract information from the underlying VCS. The implementation of this API is included in VCS plugins, which are GDExtension plugins that inherit **EditorVCSInterface** and are attached (on demand) to the singleton instance of **EditorVCSInterface**. Instead of performing the task themselves, all the virtual functions listed below are calling the internally overridden functions in the VCS plugins to provide a plug-n-play experience. A custom VCS plugin is supposed to inherit from **EditorVCSInterface** and override each of these virtual functions. .. rst-class:: classref-introduction-group Tutorials --------- - :doc:`Version control systems <../tutorials/best_practices/version_control_systems>` .. rst-class:: classref-reftable-group Methods ------- .. table:: :widths: auto +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`_checkout_branch`\ (\ branch_name\: :ref:`String`\ ) |virtual| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`_commit`\ (\ msg\: :ref:`String`\ ) |virtual| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`_create_branch`\ (\ branch_name\: :ref:`String`\ ) |virtual| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`_create_remote`\ (\ remote_name\: :ref:`String`, remote_url\: :ref:`String`\ ) |virtual| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`_discard_file`\ (\ file_path\: :ref:`String`\ ) |virtual| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`_fetch`\ (\ remote\: :ref:`String`\ ) |virtual| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array`\[:ref:`String`\] | :ref:`_get_branch_list`\ (\ ) |virtual| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`_get_current_branch_name`\ (\ ) |virtual| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_diff`\ (\ identifier\: :ref:`String`, area\: :ref:`int`\ ) |virtual| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_line_diff`\ (\ file_path\: :ref:`String`, text\: :ref:`String`\ ) |virtual| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_modified_files_data`\ (\ ) |virtual| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array`\[:ref:`Dictionary`\] | :ref:`_get_previous_commits`\ (\ max_commits\: :ref:`int`\ ) |virtual| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array`\[:ref:`String`\] | :ref:`_get_remotes`\ (\ ) |virtual| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`_get_vcs_name`\ (\ ) |virtual| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`_initialize`\ (\ project_path\: :ref:`String`\ ) |virtual| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`_pull`\ (\ remote\: :ref:`String`\ ) |virtual| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`_push`\ (\ remote\: :ref:`String`, force\: :ref:`bool`\ ) |virtual| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`_remove_branch`\ (\ branch_name\: :ref:`String`\ ) |virtual| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`_remove_remote`\ (\ remote_name\: :ref:`String`\ ) |virtual| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`_set_credentials`\ (\ username\: :ref:`String`, password\: :ref:`String`, ssh_public_key_path\: :ref:`String`, ssh_private_key_path\: :ref:`String`, ssh_passphrase\: :ref:`String`\ ) |virtual| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`_shut_down`\ (\ ) |virtual| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`_stage_file`\ (\ file_path\: :ref:`String`\ ) |virtual| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`_unstage_file`\ (\ file_path\: :ref:`String`\ ) |virtual| | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Dictionary` | :ref:`add_diff_hunks_into_diff_file`\ (\ diff_file\: :ref:`Dictionary`, diff_hunks\: :ref:`Array`\[:ref:`Dictionary`\]\ ) | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Dictionary` | :ref:`add_line_diffs_into_diff_hunk`\ (\ diff_hunk\: :ref:`Dictionary`, line_diffs\: :ref:`Array`\[:ref:`Dictionary`\]\ ) | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Dictionary` | :ref:`create_commit`\ (\ msg\: :ref:`String`, author\: :ref:`String`, id\: :ref:`String`, unix_timestamp\: :ref:`int`, offset_minutes\: :ref:`int`\ ) | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Dictionary` | :ref:`create_diff_file`\ (\ new_file\: :ref:`String`, old_file\: :ref:`String`\ ) | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Dictionary` | :ref:`create_diff_hunk`\ (\ old_start\: :ref:`int`, new_start\: :ref:`int`, old_lines\: :ref:`int`, new_lines\: :ref:`int`\ ) | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Dictionary` | :ref:`create_diff_line`\ (\ new_line_no\: :ref:`int`, old_line_no\: :ref:`int`, content\: :ref:`String`, status\: :ref:`String`\ ) | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Dictionary` | :ref:`create_status_file`\ (\ file_path\: :ref:`String`, change_type\: :ref:`ChangeType`, area\: :ref:`TreeArea`\ ) | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | |void| | :ref:`popup_error`\ (\ msg\: :ref:`String`\ ) | +------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Enumerations ------------ .. _enum_EditorVCSInterface_ChangeType: .. rst-class:: classref-enumeration enum **ChangeType**: :ref:`🔗` .. _class_EditorVCSInterface_constant_CHANGE_TYPE_NEW: .. rst-class:: classref-enumeration-constant :ref:`ChangeType` **CHANGE_TYPE_NEW** = ``0`` A new file has been added. .. _class_EditorVCSInterface_constant_CHANGE_TYPE_MODIFIED: .. rst-class:: classref-enumeration-constant :ref:`ChangeType` **CHANGE_TYPE_MODIFIED** = ``1`` An earlier added file has been modified. .. _class_EditorVCSInterface_constant_CHANGE_TYPE_RENAMED: .. rst-class:: classref-enumeration-constant :ref:`ChangeType` **CHANGE_TYPE_RENAMED** = ``2`` An earlier added file has been renamed. .. _class_EditorVCSInterface_constant_CHANGE_TYPE_DELETED: .. rst-class:: classref-enumeration-constant :ref:`ChangeType` **CHANGE_TYPE_DELETED** = ``3`` An earlier added file has been deleted. .. _class_EditorVCSInterface_constant_CHANGE_TYPE_TYPECHANGE: .. rst-class:: classref-enumeration-constant :ref:`ChangeType` **CHANGE_TYPE_TYPECHANGE** = ``4`` An earlier added file has been typechanged. .. _class_EditorVCSInterface_constant_CHANGE_TYPE_UNMERGED: .. rst-class:: classref-enumeration-constant :ref:`ChangeType` **CHANGE_TYPE_UNMERGED** = ``5`` A file is left unmerged. .. rst-class:: classref-item-separator ---- .. _enum_EditorVCSInterface_TreeArea: .. rst-class:: classref-enumeration enum **TreeArea**: :ref:`🔗` .. _class_EditorVCSInterface_constant_TREE_AREA_COMMIT: .. rst-class:: classref-enumeration-constant :ref:`TreeArea` **TREE_AREA_COMMIT** = ``0`` A commit is encountered from the commit area. .. _class_EditorVCSInterface_constant_TREE_AREA_STAGED: .. rst-class:: classref-enumeration-constant :ref:`TreeArea` **TREE_AREA_STAGED** = ``1`` A file is encountered from the staged area. .. _class_EditorVCSInterface_constant_TREE_AREA_UNSTAGED: .. rst-class:: classref-enumeration-constant :ref:`TreeArea` **TREE_AREA_UNSTAGED** = ``2`` A file is encountered from the unstaged area. .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Method Descriptions ------------------- .. _class_EditorVCSInterface_private_method__checkout_branch: .. rst-class:: classref-method :ref:`bool` **_checkout_branch**\ (\ branch_name\: :ref:`String`\ ) |virtual| :ref:`🔗` Checks out a ``branch_name`` in the VCS. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_private_method__commit: .. rst-class:: classref-method |void| **_commit**\ (\ msg\: :ref:`String`\ ) |virtual| :ref:`🔗` Commits the currently staged changes and applies the commit ``msg`` to the resulting commit. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_private_method__create_branch: .. rst-class:: classref-method |void| **_create_branch**\ (\ branch_name\: :ref:`String`\ ) |virtual| :ref:`🔗` Creates a new branch named ``branch_name`` in the VCS. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_private_method__create_remote: .. rst-class:: classref-method |void| **_create_remote**\ (\ remote_name\: :ref:`String`, remote_url\: :ref:`String`\ ) |virtual| :ref:`🔗` Creates a new remote destination with name ``remote_name`` and points it to ``remote_url``. This can be an HTTPS remote or an SSH remote. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_private_method__discard_file: .. rst-class:: classref-method |void| **_discard_file**\ (\ file_path\: :ref:`String`\ ) |virtual| :ref:`🔗` Discards the changes made in a file present at ``file_path``. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_private_method__fetch: .. rst-class:: classref-method |void| **_fetch**\ (\ remote\: :ref:`String`\ ) |virtual| :ref:`🔗` Fetches new changes from the ``remote``, but doesn't write changes to the current working directory. Equivalent to ``git fetch``. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_private_method__get_branch_list: .. rst-class:: classref-method :ref:`Array`\[:ref:`String`\] **_get_branch_list**\ (\ ) |virtual| :ref:`🔗` Gets an instance of an :ref:`Array` of :ref:`String`\ s containing available branch names in the VCS. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_private_method__get_current_branch_name: .. rst-class:: classref-method :ref:`String` **_get_current_branch_name**\ (\ ) |virtual| :ref:`🔗` Gets the current branch name defined in the VCS. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_private_method__get_diff: .. rst-class:: classref-method :ref:`Array`\[:ref:`Dictionary`\] **_get_diff**\ (\ identifier\: :ref:`String`, area\: :ref:`int`\ ) |virtual| :ref:`🔗` Returns an array of :ref:`Dictionary` items (see :ref:`create_diff_file`, :ref:`create_diff_hunk`, :ref:`create_diff_line`, :ref:`add_line_diffs_into_diff_hunk` and :ref:`add_diff_hunks_into_diff_file`), each containing information about a diff. If ``identifier`` is a file path, returns a file diff, and if it is a commit identifier, then returns a commit diff. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_private_method__get_line_diff: .. rst-class:: classref-method :ref:`Array`\[:ref:`Dictionary`\] **_get_line_diff**\ (\ file_path\: :ref:`String`, text\: :ref:`String`\ ) |virtual| :ref:`🔗` Returns an :ref:`Array` of :ref:`Dictionary` items (see :ref:`create_diff_hunk`), each containing a line diff between a file at ``file_path`` and the ``text`` which is passed in. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_private_method__get_modified_files_data: .. rst-class:: classref-method :ref:`Array`\[:ref:`Dictionary`\] **_get_modified_files_data**\ (\ ) |virtual| :ref:`🔗` Returns an :ref:`Array` of :ref:`Dictionary` items (see :ref:`create_status_file`), each containing the status data of every modified file in the project folder. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_private_method__get_previous_commits: .. rst-class:: classref-method :ref:`Array`\[:ref:`Dictionary`\] **_get_previous_commits**\ (\ max_commits\: :ref:`int`\ ) |virtual| :ref:`🔗` Returns an :ref:`Array` of :ref:`Dictionary` items (see :ref:`create_commit`), each containing the data for a past commit. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_private_method__get_remotes: .. rst-class:: classref-method :ref:`Array`\[:ref:`String`\] **_get_remotes**\ (\ ) |virtual| :ref:`🔗` Returns an :ref:`Array` of :ref:`String`\ s, each containing the name of a remote configured in the VCS. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_private_method__get_vcs_name: .. rst-class:: classref-method :ref:`String` **_get_vcs_name**\ (\ ) |virtual| :ref:`🔗` Returns the name of the underlying VCS provider. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_private_method__initialize: .. rst-class:: classref-method :ref:`bool` **_initialize**\ (\ project_path\: :ref:`String`\ ) |virtual| :ref:`🔗` Initializes the VCS plugin when called from the editor. Returns whether or not the plugin was successfully initialized. A VCS project is initialized at ``project_path``. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_private_method__pull: .. rst-class:: classref-method |void| **_pull**\ (\ remote\: :ref:`String`\ ) |virtual| :ref:`🔗` Pulls changes from the remote. This can give rise to merge conflicts. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_private_method__push: .. rst-class:: classref-method |void| **_push**\ (\ remote\: :ref:`String`, force\: :ref:`bool`\ ) |virtual| :ref:`🔗` Pushes changes to the ``remote``. If ``force`` is ``true``, a force push will override the change history already present on the remote. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_private_method__remove_branch: .. rst-class:: classref-method |void| **_remove_branch**\ (\ branch_name\: :ref:`String`\ ) |virtual| :ref:`🔗` Remove a branch from the local VCS. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_private_method__remove_remote: .. rst-class:: classref-method |void| **_remove_remote**\ (\ remote_name\: :ref:`String`\ ) |virtual| :ref:`🔗` Remove a remote from the local VCS. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_private_method__set_credentials: .. rst-class:: classref-method |void| **_set_credentials**\ (\ username\: :ref:`String`, password\: :ref:`String`, ssh_public_key_path\: :ref:`String`, ssh_private_key_path\: :ref:`String`, ssh_passphrase\: :ref:`String`\ ) |virtual| :ref:`🔗` Set user credentials in the underlying VCS. ``username`` and ``password`` are used only during HTTPS authentication unless not already mentioned in the remote URL. ``ssh_public_key_path``, ``ssh_private_key_path``, and ``ssh_passphrase`` are only used during SSH authentication. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_private_method__shut_down: .. rst-class:: classref-method :ref:`bool` **_shut_down**\ (\ ) |virtual| :ref:`🔗` Shuts down VCS plugin instance. Called when the user either closes the editor or shuts down the VCS plugin through the editor UI. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_private_method__stage_file: .. rst-class:: classref-method |void| **_stage_file**\ (\ file_path\: :ref:`String`\ ) |virtual| :ref:`🔗` Stages the file present at ``file_path`` to the staged area. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_private_method__unstage_file: .. rst-class:: classref-method |void| **_unstage_file**\ (\ file_path\: :ref:`String`\ ) |virtual| :ref:`🔗` Unstages the file present at ``file_path`` from the staged area to the unstaged area. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_method_add_diff_hunks_into_diff_file: .. rst-class:: classref-method :ref:`Dictionary` **add_diff_hunks_into_diff_file**\ (\ diff_file\: :ref:`Dictionary`, diff_hunks\: :ref:`Array`\[:ref:`Dictionary`\]\ ) :ref:`🔗` Helper function to add an array of ``diff_hunks`` into a ``diff_file``. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_method_add_line_diffs_into_diff_hunk: .. rst-class:: classref-method :ref:`Dictionary` **add_line_diffs_into_diff_hunk**\ (\ diff_hunk\: :ref:`Dictionary`, line_diffs\: :ref:`Array`\[:ref:`Dictionary`\]\ ) :ref:`🔗` Helper function to add an array of ``line_diffs`` into a ``diff_hunk``. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_method_create_commit: .. rst-class:: classref-method :ref:`Dictionary` **create_commit**\ (\ msg\: :ref:`String`, author\: :ref:`String`, id\: :ref:`String`, unix_timestamp\: :ref:`int`, offset_minutes\: :ref:`int`\ ) :ref:`🔗` Helper function to create a commit :ref:`Dictionary` item. ``msg`` is the commit message of the commit. ``author`` is a single human-readable string containing all the author's details, e.g. the email and name configured in the VCS. ``id`` is the identifier of the commit, in whichever format your VCS may provide an identifier to commits. ``unix_timestamp`` is the UTC Unix timestamp of when the commit was created. ``offset_minutes`` is the timezone offset in minutes, recorded from the system timezone where the commit was created. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_method_create_diff_file: .. rst-class:: classref-method :ref:`Dictionary` **create_diff_file**\ (\ new_file\: :ref:`String`, old_file\: :ref:`String`\ ) :ref:`🔗` Helper function to create a :ref:`Dictionary` for storing old and new diff file paths. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_method_create_diff_hunk: .. rst-class:: classref-method :ref:`Dictionary` **create_diff_hunk**\ (\ old_start\: :ref:`int`, new_start\: :ref:`int`, old_lines\: :ref:`int`, new_lines\: :ref:`int`\ ) :ref:`🔗` Helper function to create a :ref:`Dictionary` for storing diff hunk data. ``old_start`` is the starting line number in old file. ``new_start`` is the starting line number in new file. ``old_lines`` is the number of lines in the old file. ``new_lines`` is the number of lines in the new file. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_method_create_diff_line: .. rst-class:: classref-method :ref:`Dictionary` **create_diff_line**\ (\ new_line_no\: :ref:`int`, old_line_no\: :ref:`int`, content\: :ref:`String`, status\: :ref:`String`\ ) :ref:`🔗` Helper function to create a :ref:`Dictionary` for storing a line diff. ``new_line_no`` is the line number in the new file (can be ``-1`` if the line is deleted). ``old_line_no`` is the line number in the old file (can be ``-1`` if the line is added). ``content`` is the diff text. ``status`` is a single character string which stores the line origin. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_method_create_status_file: .. rst-class:: classref-method :ref:`Dictionary` **create_status_file**\ (\ file_path\: :ref:`String`, change_type\: :ref:`ChangeType`, area\: :ref:`TreeArea`\ ) :ref:`🔗` Helper function to create a :ref:`Dictionary` used by editor to read the status of a file. .. rst-class:: classref-item-separator ---- .. _class_EditorVCSInterface_method_popup_error: .. rst-class:: classref-method |void| **popup_error**\ (\ msg\: :ref:`String`\ ) :ref:`🔗` Pops up an error message in the editor which is shown as coming from the underlying VCS. Use this to show VCS specific error messages. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` .. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)` .. |void| replace:: :abbr:`void (No return value.)`