forked from qt-creator/qt-creator
Git - made Clean List support submodules
Change-Id: I106420e8492d64451eee3648800ce57a4de2bfb9 Reviewed-by: Orgad Shaneh <orgads@gmail.com> Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
This commit is contained in:
@@ -2029,7 +2029,6 @@ bool GitClient::synchronousShow(const QString &workingDirectory, const QString &
|
|||||||
// Retrieve list of files to be cleaned
|
// Retrieve list of files to be cleaned
|
||||||
bool GitClient::cleanList(const QString &workingDirectory, const QString &flag, QStringList *files, QString *errorMessage)
|
bool GitClient::cleanList(const QString &workingDirectory, const QString &flag, QStringList *files, QString *errorMessage)
|
||||||
{
|
{
|
||||||
files->clear();
|
|
||||||
QStringList args;
|
QStringList args;
|
||||||
args << QLatin1String("clean") << QLatin1String("--dry-run") << flag;
|
args << QLatin1String("clean") << QLatin1String("--dry-run") << flag;
|
||||||
QByteArray outputText;
|
QByteArray outputText;
|
||||||
@@ -2052,6 +2051,15 @@ bool GitClient::synchronousCleanList(const QString &workingDirectory, QStringLis
|
|||||||
{
|
{
|
||||||
bool res = cleanList(workingDirectory, QLatin1String("-df"), files, errorMessage);
|
bool res = cleanList(workingDirectory, QLatin1String("-df"), files, errorMessage);
|
||||||
res &= cleanList(workingDirectory, QLatin1String("-dXf"), ignoredFiles, errorMessage);
|
res &= cleanList(workingDirectory, QLatin1String("-dXf"), ignoredFiles, errorMessage);
|
||||||
|
|
||||||
|
SubmoduleDataMap submodules = submoduleList(workingDirectory);
|
||||||
|
foreach (const SubmoduleData &submodule, submodules) {
|
||||||
|
if (submodule.ignore != QLatin1String("all")
|
||||||
|
&& submodule.ignore != QLatin1String("dirty")) {
|
||||||
|
res &= synchronousCleanList(workingDirectory + QLatin1Char('/') + submodule.dir,
|
||||||
|
files, ignoredFiles, errorMessage);
|
||||||
|
}
|
||||||
|
}
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user