2025-01-10 13:48:38 +01:00
|
|
|
#ifndef GIT_H
|
|
|
|
#define GIT_H
|
|
|
|
|
|
|
|
#include <QUrl>
|
|
|
|
#include <QObject>
|
2025-01-13 17:59:08 +01:00
|
|
|
#include <QtCore/QDir>
|
2025-01-10 13:48:38 +01:00
|
|
|
|
2025-01-13 17:59:08 +01:00
|
|
|
#include "libgit.h"
|
2025-01-10 13:48:38 +01:00
|
|
|
|
|
|
|
class Git : public QObject
|
|
|
|
{
|
|
|
|
Q_OBJECT
|
|
|
|
|
2025-01-13 17:59:08 +01:00
|
|
|
private:
|
|
|
|
QDir clone_setup();
|
|
|
|
bool move_to_destination(QString path, QDir tmp_dir);
|
|
|
|
bool clone_tear_down(QDir tmp_dir);
|
|
|
|
bool clone(QString url, QString path, mode_type mode);
|
|
|
|
|
|
|
|
|
2025-01-10 13:48:38 +01:00
|
|
|
public:
|
2025-01-10 13:58:46 +01:00
|
|
|
Git() = default;
|
2025-01-10 13:48:38 +01:00
|
|
|
~Git() override = default;
|
|
|
|
|
2025-01-13 17:59:08 +01:00
|
|
|
Q_INVOKABLE bool clone_http(QString url, QString path);
|
|
|
|
Q_INVOKABLE bool clone_http_pass(QString url, QString path, QString pass);
|
|
|
|
// Q_INVOKABLE bool clone_ssh_pass(QString url, QString path, QString pass);
|
|
|
|
// Q_INVOKABLE bool clone_ssh_key(QString url, QString path, QString pub_key, QString priv_key, QString passphrase);
|
2025-01-10 13:48:38 +01:00
|
|
|
// Q_INVOKABLE bool update(QUrl url, QString path);
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|