forked from qt-creator/qt-creator
VCS[git]: Add support for stashes.
Add non-modal stash management dialog and additional menu option "Stash snapshot..." to stash away changes prompting for a description, which will immediately replay the stash (take snapshot and continue working). Add interface to IVersionControl for creating/restoring/deleting snapshots for backup/complex undo operations (currently supported by git only). Add test options to VCSBasePlugin. Clean up and extend git client accordingly.
This commit is contained in:
@@ -55,6 +55,7 @@ bool CVSControl::supportsOperation(Operation operation) const
|
||||
break;
|
||||
case OpenOperation:
|
||||
case CreateRepositoryOperation:
|
||||
case SnapshotOperations:
|
||||
rc = false;
|
||||
break;
|
||||
}
|
||||
@@ -84,6 +85,26 @@ bool CVSControl::vcsCreateRepository(const QString &)
|
||||
return false;
|
||||
}
|
||||
|
||||
QString CVSControl::vcsCreateSnapshot(const QString &)
|
||||
{
|
||||
return QString();
|
||||
}
|
||||
|
||||
QStringList CVSControl::vcsSnapshots(const QString &)
|
||||
{
|
||||
return QStringList();
|
||||
}
|
||||
|
||||
bool CVSControl::vcsRestoreSnapshot(const QString &, const QString &)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
bool CVSControl::vcsRemoveSnapshot(const QString &, const QString &)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
bool CVSControl::managesDirectory(const QString &directory) const
|
||||
{
|
||||
return m_plugin->managesDirectory(directory);
|
||||
|
||||
@@ -53,6 +53,10 @@ public:
|
||||
virtual bool vcsAdd(const QString &fileName);
|
||||
virtual bool vcsDelete(const QString &filename);
|
||||
virtual bool vcsCreateRepository(const QString &directory);
|
||||
virtual QString vcsCreateSnapshot(const QString &topLevel);
|
||||
virtual QStringList vcsSnapshots(const QString &topLevel);
|
||||
virtual bool vcsRestoreSnapshot(const QString &topLevel, const QString &name);
|
||||
virtual bool vcsRemoveSnapshot(const QString &topLevel, const QString &name);
|
||||
|
||||
void emitRepositoryChanged(const QString &s);
|
||||
void emitFilesChanged(const QStringList &l);
|
||||
|
||||
Reference in New Issue
Block a user