24#ifndef LIBGIT_BACKEND_H_
25#define LIBGIT_BACKEND_H_
31struct git_annotated_commit;
43 const std::vector<wxString>& aFiles,
44 const wxString& aMessage,
45 const wxString& aAuthorName,
46 const wxString& aAuthorEmail )
override;
53 const wxString& aPathspec )
override;
58 const std::set<wxString>& aLocalChanges,
59 const std::set<wxString>& aRemoteChanges,
60 std::map<wxString, FileStatus>& aFileStatus )
override;
66 wxString& aValue )
override;
81 int CreateBranch( git_repository* aRepo,
const wxString& aBranchName )
override;
82 bool RemoveVCS( git_repository*& aRepo,
const wxString& aProjectPath,
83 bool aRemoveGitDir, wxString* aErrors )
override;
96 size_t aMergeHeadsCount );
98 size_t aMergeHeadsCount );
virtual void PerformRevert(GIT_REVERT_HANDLER *aHandler)=0
virtual bool PerformAddToIndex(GIT_ADD_TO_INDEX_HANDLER *aHandler)=0
virtual InitResult InitializeRepository(GIT_INIT_HANDLER *aHandler, const wxString &aPath)=0
virtual bool IsLibraryAvailable()=0
virtual bool GetConfigString(GIT_CONFIG_HANDLER *aHandler, const wxString &aKey, wxString &aValue)=0
virtual void Shutdown()=0
virtual void PerformRemoveFromIndex(GIT_REMOVE_FROM_INDEX_HANDLER *aHandler)=0
virtual PullResult PerformPull(GIT_PULL_HANDLER *aHandler)=0
virtual wxString GetWorkingDirectory(GIT_STATUS_HANDLER *aHandler)=0
virtual bool IsRepository(GIT_INIT_HANDLER *aHandler, const wxString &aPath)=0
virtual bool Clone(GIT_CLONE_HANDLER *aHandler)=0
virtual bool BranchExists(GIT_BRANCH_HANDLER *aHandler, const wxString &aBranchName)=0
virtual int CreateBranch(git_repository *aRepo, const wxString &aBranchName)=0
virtual std::map< wxString, FileStatus > GetFileStatus(GIT_STATUS_HANDLER *aHandler, const wxString &aPathspec)=0
virtual bool AddToIndex(GIT_ADD_TO_INDEX_HANDLER *aHandler, const wxString &aFilePath)=0
virtual BranchResult SwitchToBranch(GIT_BRANCH_HANDLER *aHandler, const wxString &aBranchName)=0
virtual PushResult Push(GIT_PUSH_HANDLER *aHandler)=0
virtual bool RemoveVCS(git_repository *&aRepo, const wxString &aProjectPath, bool aRemoveGitDir, wxString *aErrors)=0
virtual bool RemoveFromIndex(GIT_REMOVE_FROM_INDEX_HANDLER *aHandler, const wxString &aFilePath)=0
virtual wxString GetCurrentBranchName(GIT_STATUS_HANDLER *aHandler)=0
virtual git_repository * GetRepositoryForFile(const char *aFilename)=0
virtual bool PerformFetch(GIT_PULL_HANDLER *aHandler, bool aSkipLock)=0
virtual void UpdateRemoteStatus(GIT_STATUS_HANDLER *aHandler, const std::set< wxString > &aLocalChanges, const std::set< wxString > &aRemoteChanges, std::map< wxString, FileStatus > &aFileStatus)=0
virtual CommitResult Commit(GIT_COMMIT_HANDLER *aHandler, const std::vector< wxString > &aFiles, const wxString &aMessage, const wxString &aAuthorName, const wxString &aAuthorEmail)=0
virtual bool HasChangedFiles(GIT_STATUS_HANDLER *aHandler)=0
virtual bool SetupRemote(GIT_INIT_HANDLER *aHandler, const RemoteConfig &aConfig)=0
PullResult handleMerge(GIT_PULL_HANDLER *aHandler, const git_annotated_commit **aMergeHeads, size_t aMergeHeadsCount)
PullResult handleRebase(GIT_PULL_HANDLER *aHandler, const git_annotated_commit **aMergeHeads, size_t aMergeHeadsCount)
PullResult handleFastForward(GIT_PULL_HANDLER *aHandler)
#define APIEXPORT
Macros which export functions from a DLL/DSO.