Guitar
GitBasicSession.h
Go to the documentation of this file.
1 #ifndef GITBASICSESSION_H
2 #define GITBASICSESSION_H
3 
4 #include "AbstractGitSession.h"
5 #include <QString>
6 
8 public:
9  struct Commands {
10  std::string git_command;
11  std::string ssh_command;
12  };
13 private:
14  std::string gitCommand() const;
15  std::string sshCommand() const;
16 protected:
17  virtual std::shared_ptr<AbstractGitSession> dup();
18 public:
19  GitBasicSession(Commands const &cmds);
20 
21  bool is_connected() const;
22  bool isValidWorkingCopy(std::string const &dir) const;
23  std::optional<GitResult> exec_git(std::string const &arg, Option const &opt);
24  bool remove(const std::string &path);
25 
26  virtual std::optional<std::vector<GitFileItem>> ls(char const *path);
27  virtual std::optional<std::vector<char>> readfile(char const *path);
28 };
29 
30 #endif // GITBASICSESSION_H
Definition: AbstractGitSession.h:14
Definition: GitBasicSession.h:7
std::optional< GitResult > exec_git(std::string const &arg, Option const &opt)
Definition: GitBasicSession.cpp:51
bool isValidWorkingCopy(std::string const &dir) const
Definition: Git.cpp:126
bool is_connected() const
Definition: GitBasicSession.cpp:46
bool remove(const std::string &path)
Definition: GitBasicSession.cpp:145
virtual std::optional< std::vector< GitFileItem > > ls(char const *path)
Definition: GitBasicSession.cpp:155
virtual std::shared_ptr< AbstractGitSession > dup()
Definition: GitBasicSession.cpp:40
virtual std::optional< std::vector< char > > readfile(char const *path)
Definition: GitBasicSession.cpp:169
std::string gitCommand() const
Definition: GitBasicSession.cpp:30
std::string sshCommand() const
Definition: GitBasicSession.cpp:35
GitBasicSession(Commands const &cmds)
Definition: GitBasicSession.cpp:24
Definition: AbstractGitSession.h:17
Definition: GitBasicSession.h:9
std::string ssh_command
Definition: GitBasicSession.h:11
std::string git_command
Definition: GitBasicSession.h:10