Guitar
GitDiffManager.h
Go to the documentation of this file.
1 #ifndef GITDIFFMANAGER_H
2 #define GITDIFFMANAGER_H
3 
4 #include "GitObjectManager.h"
5 
7  friend class CommitListThread;
8 private:
9  class LookupTable;
10 private:
12 
13  using MapList = std::list<LookupTable>;
14 
16 
17  static void AddItem(GitDiff *item, QList<GitDiff> *diffs);
18 
19  void retrieveCompleteTree(GitRunner g, QString const &dir, GitTreeItemList const *files, QList<GitDiff> *diffs);
20 public:
22  {
23  objcache_ = objcache;
24  }
25 
26  QList<GitDiff> diff(GitRunner g, const GitHash &id, const QList<GitSubmoduleItem> &submodules);
27  QList<GitDiff> diff_uncommited(GitRunner g, const QList<GitSubmoduleItem> &submodules);
28 
29 public:
30  static QString diffObjects(GitRunner g, QString const &a_id, QString const &b_id);
31  static QString diffFiles(GitRunner g, QString const &a_path, QString const &b_path);
32  static GitDiff parseDiff(std::string const &s, const GitDiff *info);
33  static QString makeKey(const QString &a_id, const QString &b_id);
34  static QString makeKey(const GitDiff &diff);
35  static QString prependPathPrefix(QString const &path);
36 };
37 
38 QString lookupFileID(GitRunner g, GitObjectCache *objcache, const GitHash &commit_id, QString const &file);
39 
40 #endif // GITDIFFMANAGER_H
QString lookupFileID(GitRunner g, GitObjectCache *objcache, const GitHash &commit_id, QString const &file)
指定されたコミットに属するファイルのIDを求める
Definition: GitDiffManager.cpp:431
QList< GitTreeItem > GitTreeItemList
Definition: GitObjectManager.h:97
Definition: GitDiffManager.cpp:11
Definition: GitDiffManager.h:6
static QString diffFiles(GitRunner g, QString const &a_path, QString const &b_path)
Definition: GitDiffManager.cpp:77
friend class CommitListThread
Definition: GitDiffManager.h:7
QList< GitDiff > diff_uncommited(GitRunner g, const QList< GitSubmoduleItem > &submodules)
Definition: GitDiffManager.cpp:323
std::list< LookupTable > MapList
Definition: GitDiffManager.h:13
GitRunner git_for_submodule(GitRunner g, const GitSubmoduleItem &submod)
Definition: GitDiffManager.cpp:46
static void AddItem(GitDiff *item, QList< GitDiff > *diffs)
static QString makeKey(const QString &a_id, const QString &b_id)
Definition: GitDiffManager.cpp:51
static QString prependPathPrefix(QString const &path)
Definition: GitDiffManager.cpp:61
QList< GitDiff > diff(GitRunner g, const GitHash &id, const QList< GitSubmoduleItem > &submodules)
コミットの差分を取得する
Definition: GitDiffManager.cpp:152
static QString diffObjects(GitRunner g, QString const &a_id, QString const &b_id)
Definition: GitDiffManager.cpp:66
GitDiffManager(GitObjectCache *objcache)
Definition: GitDiffManager.h:21
static GitDiff parseDiff(std::string const &s, const GitDiff *info)
Definition: GitDiffManager.cpp:82
GitObjectCache * objcache_
Definition: GitDiffManager.h:11
void retrieveCompleteTree(GitRunner g, QString const &dir, GitTreeItemList const *files, QList< GitDiff > *diffs)
Definition: GitDiffManager.cpp:131
Definition: GitTypes.h:462
Definition: GitTypes.h:32
Definition: GitObjectManager.h:37
Definition: GitRunner.h:11
Definition: GitTypes.h:399