Move UpdatePTUDevCtrl files into subdir UpdatePTUDevCtrl
This commit is contained in:
62
UpdatePTUDevCtrl/git/git_client.h
Normal file
62
UpdatePTUDevCtrl/git/git_client.h
Normal file
@@ -0,0 +1,62 @@
|
||||
#ifndef GIT_CLIENT_H_INCLUDED
|
||||
#define GIT_CLIENT_H_INCLUDED
|
||||
|
||||
#include <QObject>
|
||||
#include <QStringList>
|
||||
#include <optional>
|
||||
|
||||
#include "process/command.h"
|
||||
#include "ismas/ismas_client.h"
|
||||
|
||||
class Worker;
|
||||
class GitClient : public QObject {
|
||||
Q_OBJECT
|
||||
|
||||
Worker *m_worker;
|
||||
QString const m_repositoryPath;
|
||||
QString const m_customerNr;
|
||||
QString const m_workingDirectory;
|
||||
QString m_branchName;
|
||||
QString const m_customerRepository;
|
||||
|
||||
bool copyGitConfigFromMaster();
|
||||
|
||||
public:
|
||||
explicit GitClient(QString const &customerNrStr,
|
||||
QString const &repositoryPath,
|
||||
QString const &workingDirectory = QCoreApplication::applicationDirPath(),
|
||||
QString const &branchName = "master",
|
||||
QObject *parent = 0);
|
||||
|
||||
bool gitCloneCustomerRepository();
|
||||
bool gitCheckoutBranch();
|
||||
QStringList gitBranchNames();
|
||||
|
||||
QString const workingDirectory() const { return m_workingDirectory; }
|
||||
QString workingDirectory() { return m_workingDirectory; }
|
||||
|
||||
QString const branchName() const { return m_branchName; }
|
||||
QString branchName() { return m_branchName; }
|
||||
|
||||
QString repositoryPath() { return m_repositoryPath; }
|
||||
QString const repositoryPath() const { return m_repositoryPath; }
|
||||
|
||||
bool gitCloneAndCheckoutBranch();
|
||||
|
||||
Worker *worker() { return m_worker; }
|
||||
Worker const *worker() const { return m_worker; }
|
||||
|
||||
std::optional<QString> gitPull();
|
||||
std::optional<QStringList> gitDiff(QString const &commit);
|
||||
std::optional<QStringList> gitMerge();
|
||||
|
||||
bool gitFsck();
|
||||
|
||||
QString gitLastCommit(QString fileName);
|
||||
QStringList gitShowReason(QString branchName);
|
||||
static QString gitBlob(QString fileName);
|
||||
QString gitCommitForBlob(QString blob);
|
||||
bool gitIsFileTracked(QString file2name);
|
||||
};
|
||||
|
||||
#endif // GIT_CLIENT_H_INCLUDED
|
Reference in New Issue
Block a user