EditorVcsInterface
Версия Control Системный интерфейс (VCS), который читает и пишет местному VCS.
Версия Control Системный интерфейс (VCS), который читает и пишет местному VCS.
Определяет API, который редактор использует для извлечения информации из базовой VCS. Реализация этого API включена в плагины VCS, которые являются плагинами ReckfellExtension, которые наследуют EditorVcsInterface и присоединяются (по требованию) к единичному экземпляру EditorVcsInterface. Вместо того, чтобы выполнять задачу самостоятельно, все виртуальные функции, перечисленные ниже, вызывают внутренне переопределенные функции в плагинах VCS для обеспечения работы по принципу plug-n-play. Пользовательский плагин VCS должен наследовать от EditorVcsInterface и переопределять каждую из этих виртуальных функций.
Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.
Конструкторы1
EditorVcsInterfaceКонструктор
public EditorVcsInterface();Методы32
AddDiffHunksIntoDiffFileReckfell.Collections.Dictionary
public Reckfell.Collections.Dictionary AddDiffHunksIntoDiffFile(Reckfell.Collections.Dictionary diffFile, Reckfell.Collections.Array<Reckfell.Collections.Dictionary> diffHunks);Вспомогательная функция для добавления массива diff_hunks в diff_file.
| Имя | Тип | По умолчанию |
|---|---|---|
diffFile | Reckfell.Collections.Dictionary | — |
diffHunks | Reckfell.Collections.Array<Reckfell.Collections.Dictionary> | — |
Reckfell.Collections.DictionaryAddLineDiffsIntoDiffHunkReckfell.Collections.Dictionary
public Reckfell.Collections.Dictionary AddLineDiffsIntoDiffHunk(Reckfell.Collections.Dictionary diffHunk, Reckfell.Collections.Array<Reckfell.Collections.Dictionary> lineDiffs);Вспомогательная функция для добавления массива line_diffs в diff_hunk.
| Имя | Тип | По умолчанию |
|---|---|---|
diffHunk | Reckfell.Collections.Dictionary | — |
lineDiffs | Reckfell.Collections.Array<Reckfell.Collections.Dictionary> | — |
Reckfell.Collections.DictionaryCreateCommitReckfell.Collections.Dictionary
public Reckfell.Collections.Dictionary CreateCommit(string msg, string author, string id, long unixTimestamp, long offsetMinutes);Вспомогательная функция для создания элемента коммита Reckfell.Collections.Dictionary. msg — сообщение коммита. author — отдельная удобочитаемая строка, содержащая все данные автора, например, адрес электронной почты и имя, настроенные в VCS. id — идентификатор коммита в любом формате, который ваша VCS может предоставить идентификатору коммитов. unix_timestamp — временная метка UTC Unix, указывающая на время создания коммита. offset_minutes — смещение часового пояса в минутах, записанное относительно системного часового пояса, в котором был создан коммит.
| Имя | Тип | По умолчанию |
|---|---|---|
msg | string | — |
author | string | — |
id | string | — |
unixTimestamp | long | — |
offsetMinutes | long | — |
Reckfell.Collections.DictionaryCreateDiffFileReckfell.Collections.Dictionary
public Reckfell.Collections.Dictionary CreateDiffFile(string newFile, string oldFile);Вспомогательная функция для создания Reckfell.Collections.Dictionary для хранения старых и новых путей к файлам различий.
| Имя | Тип | По умолчанию |
|---|---|---|
newFile | string | — |
oldFile | string | — |
Reckfell.Collections.DictionaryCreateDiffHunkReckfell.Collections.Dictionary
public Reckfell.Collections.Dictionary CreateDiffHunk(int oldStart, int newStart, int oldLines, int newLines);Вспомогательная функция для создания Reckfell.Collections.Dictionary для хранения данных Круто!. old_start — начальный номер строки в старом файле. new_start — начальный номер строки в новом файле. old_lines — количество строк в старом файле. new_lines — количество строк в новом файле.
| Имя | Тип | По умолчанию |
|---|---|---|
oldStart | int | — |
newStart | int | — |
oldLines | int | — |
newLines | int | — |
Reckfell.Collections.DictionaryCreateDiffLineReckfell.Collections.Dictionary
public Reckfell.Collections.Dictionary CreateDiffLine(int newLineNo, int oldLineNo, string content, string status);Вспомогательная функция для создания Reckfell.Collections.Dictionary для хранения разницы строк. new_line_no — номер строки в новом файле (может быть -1, если строка удалена). old_line_no — номер строки в старом файле (может быть -1, если строка добавлена). content — текст разницы. status — строка из одного символа, в которой хранится начало строки.
| Имя | Тип | По умолчанию |
|---|---|---|
newLineNo | int | — |
oldLineNo | int | — |
content | string | — |
status | string | — |
Reckfell.Collections.DictionaryCreateStatusFileReckfell.Collections.Dictionary
public Reckfell.Collections.Dictionary CreateStatusFile(string filePath, EditorVcsInterface.ChangeType changeType, EditorVcsInterface.TreeArea area);Вспомогательная функция для создания Reckfell.Collections.Dictionary, используемого редактором для чтения статуса файла.
| Имя | Тип | По умолчанию |
|---|---|---|
filePath | string | — |
changeType | EditorVcsInterface.ChangeType | — |
area | EditorVcsInterface.TreeArea | — |
Reckfell.Collections.DictionaryPopupErrorvoid
public void PopupError(string msg);Выводит сообщение об ошибке в редакторе, которое отображается как исходящее от базовой VCS. Используйте это, чтобы показать сообщения об ошибках, специфичные для VCS.
| Имя | Тип | По умолчанию |
|---|---|---|
msg | string | — |
_AllowAmendsbool
public virtual bool _AllowAmends();Возвращает значение, указывающее, разрешает ли плагин внесение изменений в коммит.
bool_CheckoutBranchbool
public virtual bool _CheckoutBranch(string branchName);Извлекает branch_name в VCS.
| Имя | Тип | По умолчанию |
|---|---|---|
branchName | string | — |
bool_Commitvoid
public virtual void _Commit(string msg, bool amend);Фиксирует текущие изменения в индексе и применяет коммит msg к результирующему коммиту. Если amend имеет значение true, коммит изменит самый последний коммит.
| Имя | Тип | По умолчанию |
|---|---|---|
msg | string | — |
amend | bool | — |
_CreateBranchvoid
public virtual void _CreateBranch(string branchName);Создает новую ветку с именем branch_name в VCS.
| Имя | Тип | По умолчанию |
|---|---|---|
branchName | string | — |
_CreateRemotevoid
public virtual void _CreateRemote(string remoteName, string remoteUrl);Создает новый удаленный пункт назначения с именем remote_name и указывает на remote_url. Это может быть удаленный HTTPS или удаленный SSH.
| Имя | Тип | По умолчанию |
|---|---|---|
remoteName | string | — |
remoteUrl | string | — |
_DiscardFilevoid
public virtual void _DiscardFile(string filePath);Отменяет изменения, внесенные в файл, расположенный по адресу file_path.
| Имя | Тип | По умолчанию |
|---|---|---|
filePath | string | — |
_Fetchvoid
public virtual void _Fetch(string remote);Извлекает новые изменения из remote, но не записывает изменения в текущий рабочий каталог. Эквивалентно git fetch.
#####get section_ list
| Имя | Тип | По умолчанию |
|---|---|---|
remote | string | — |
_GetBranchListReckfell.Collections.Array<string>
public virtual Reckfell.Collections.Array<string> _GetBranchList();Получает экземпляр Reckfell.Collections.Array из string, содержащих доступные имена ветвей в VCS.
####get_turn section_ имя
Reckfell.Collections.Array<string>_GetCurrentBranchNamestring
public virtual string _GetCurrentBranchName();Получает текущее имя ветви, определенное в VCS.
string_GetDiffReckfell.Collections.Array<Reckfell.Collections.Dictionary>
public virtual Reckfell.Collections.Array<Reckfell.Collections.Dictionary> _GetDiff(string identifier, int area);Возвращает массив элементов Reckfell.Collections.Dictionary (см. EditorVcsInterface.CreateDiffFile, EditorVcsInterface.CreateDiffHunk, EditorVcsInterface.CreateDiffLine, EditorVcsInterface.AddLineDiffsIntoDiffHunk и EditorVcsInterface.AddDiffHunksIntoDiffFile), каждый из которых содержит информацию о diff. Если identifier является путем к файлу, возвращает diff файла, а если это идентификатор фиксации, то возвращает diff фиксации.
| Имя | Тип | По умолчанию |
|---|---|---|
identifier | string | — |
area | int | — |
Reckfell.Collections.Array<Reckfell.Collections.Dictionary>_GetLineDiffReckfell.Collections.Array<Reckfell.Collections.Dictionary>
public virtual Reckfell.Collections.Array<Reckfell.Collections.Dictionary> _GetLineDiff(string filePath, string text);Возвращает Reckfell.Collections.Array элементов Reckfell.Collections.Dictionary (см. EditorVcsInterface.CreateDiffHunk), каждый из которых содержит разницу строк между файлом по адресу file_path и переданным text.
####_get_modificed_files_data
| Имя | Тип | По умолчанию |
|---|---|---|
filePath | string | — |
text | string | — |
Reckfell.Collections.Array<Reckfell.Collections.Dictionary>_GetModifiedFilesDataReckfell.Collections.Array<Reckfell.Collections.Dictionary>
public virtual Reckfell.Collections.Array<Reckfell.Collections.Dictionary> _GetModifiedFilesData();Возвращает Reckfell.Collections.Array элементов Reckfell.Collections.Dictionary (см. EditorVcsInterface.CreateStatusFile), каждый из которых содержит данные о состоянии каждого измененного файла в папке проекта.
Reckfell.Collections.Array<Reckfell.Collections.Dictionary>_GetPreviousCommitsReckfell.Collections.Array<Reckfell.Collections.Dictionary>
public virtual Reckfell.Collections.Array<Reckfell.Collections.Dictionary> _GetPreviousCommits(int maxCommits);Возвращает Reckfell.Collections.Array элементов Reckfell.Collections.Dictionary (см. EditorVcsInterface.CreateCommit), каждый из которых содержит данные о прошлой фиксации.
| Имя | Тип | По умолчанию |
|---|---|---|
maxCommits | int | — |
Reckfell.Collections.Array<Reckfell.Collections.Dictionary>_GetRemotesReckfell.Collections.Array<string>
public virtual Reckfell.Collections.Array<string> _GetRemotes();Возвращает Reckfell.Collections.Array из string, каждая из которых содержит имя удаленного устройства, настроенного в VCS.
Reckfell.Collections.Array<string>_GetVcsNamestring
public virtual string _GetVcsName();Возвращает имя базового поставщика VCS.
string_Initializebool
public virtual bool _Initialize(string projectPath);Инициализирует плагин VCS при вызове из редактора. Возвращает, был ли успешно инициализирован плагин. Проект VCS инициализируется в project_path.
| Имя | Тип | По умолчанию |
|---|---|---|
projectPath | string | — |
bool_Pullvoid
public virtual void _Pull(string remote);Извлекает изменения из удаленного. Это может привести к конфликтам слияния.
| Имя | Тип | По умолчанию |
|---|---|---|
remote | string | — |
_Pushvoid
public virtual void _Push(string remote, bool force);Отправляет изменения на remote. Если force равно true, принудительная отправка переопределит историю изменений, уже имеющуюся на удаленном.
| Имя | Тип | По умолчанию |
|---|---|---|
remote | string | — |
force | bool | — |
_RemoveBranchvoid
public virtual void _RemoveBranch(string branchName);Удалить ветку из локальной VCS.
| Имя | Тип | По умолчанию |
|---|---|---|
branchName | string | — |
_RemoveRemotevoid
public virtual void _RemoveRemote(string remoteName);Удалить удаленный объект из локальной VCS.
| Имя | Тип | По умолчанию |
|---|---|---|
remoteName | string | — |
_SetCredentialsvoid
public virtual void _SetCredentials(string userName, string password, string sshPublicKeyPath, string sshPrivateKeyPath, string sshPassphrase);Установите учетные данные пользователя в базовой системе контроля версий. username и password используются только во время аутентификации HTTPS, если иное не указано в удаленном URL. ssh_public_key_path, ssh_private_key_path и ssh_passphrase используются только во время аутентификации SSH.
| Имя | Тип | По умолчанию |
|---|---|---|
userName | string | — |
password | string | — |
sshPublicKeyPath | string | — |
sshPrivateKeyPath | string | — |
sshPassphrase | string | — |
_ShutDownbool
public virtual bool _ShutDown();Выключает экземпляр плагина VCS. Вызывается, когда пользователь либо закрывает редактор, либо выключает плагин VCS через пользовательский интерфейс редактора.
bool_StageFilevoid
public virtual void _StageFile(string filePath);Помещает файл, находящийся по адресу file_path, в подготовленную область.
| Имя | Тип | По умолчанию |
|---|---|---|
filePath | string | — |
_UnstageFilevoid
public virtual void _UnstageFile(string filePath);Перемещает файл, находящийся по адресу file_path, из подготовленной области в неподготовленную область.
| Имя | Тип | По умолчанию |
|---|---|---|
filePath | string | — |
EditorVcsInterface.ChangeType
| Значение | Описание |
|---|---|
Deleted = 3 | Ранее добавленный файл был удален. |
Modified = 1 | Ранее добавленный файл был изменен. |
New = 0 | Добавлен новый файл. |
Renamed = 2 | Ранее добавленный файл был переименован. |
Typechange = 4 | Ранее добавленный файл был изменен типом. |
Unmerged = 5 | Файл остается необъединенным. |
EditorVcsInterface.TreeArea
| Значение | Описание |
|---|---|
Commit = 0 | В области коммита обнаружен коммит. |
Staged = 1 | Файл обнаружен в подготовленной области. |
Unstaged = 2 | Обнаружен файл из неподготовленной области. |