-
Notifications
You must be signed in to change notification settings - Fork 2
/
Branch.h
47 lines (40 loc) · 1.68 KB
/
Branch.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#ifndef BRANCH_H
#define BRANCH_H
#include "Reference.h"
#include "libgit2wrapper_global.h"
namespace Git
{
/**
* @brief A Branch osztály egy DTO osztály a `git branch` paranccsal vagy
* azzal egyenértékűvel létrehozott objektumok reprezentálására.
*/
class LIBGIT2WRAPPERSHARED_EXPORT Branch : public Git::Reference
{
private:
bool local; /**<A local repository tulajdona-e az objektum vagy egy remote branch-et követ. */
std::unique_ptr<git_commit, void(*)(git_commit*)>
getReferenceHeadLibGitCommit(const std::string& branchName) const;
public:
/**
* @brief Branch konstruktor
* @param _repositoryKey
* A branch-et tartalmazó repository teljes elérési útvonala.
* @param _name
* A branch neve a repositoryban.
* @param _isLocal
* Visszaadja, hogy a Branch objektum egy lokális branch-et jelöl vagy egy olyat,
* amely a távoli repository egy branch-ét követi-e.
*
* Ha az objektum nem található a repositoryban, akkor std::invalid_argument dobódik.<BR>
* Ha az objektum kezelése közben hiba történik, akkor Git::LibGitException dobódhat.
*/
Branch(const std::string& _repositoryKey, const std::string& _name, bool _isLocal = true);
/**
* @brief isLocal Visszaadja, hogy a Branch objektum egy lokális branch-et jelöl vagy egy olyat,
* amely a távoli repository egy branch-ét követi.
* @return Lokális vagy remote branch.
*/
bool isLocal() const { return local; }
};
}
#endif //BRANCH_H