Mercurial: Fixed committing untracked files.

by passing -A (plus security check).
This commit is contained in:
Friedemann Kleint
2010-01-11 15:43:08 +01:00
parent 95da419067
commit c07e1f7fc1
3 changed files with 15 additions and 5 deletions

View File

@@ -515,12 +515,19 @@ void MercurialClient::update(const QString &repositoryRoot, const QString &revis
}
void MercurialClient::commit(const QString &repositoryRoot, const QStringList &files,
const QString &committerInfo, const QString &commitMessageFile)
const QString &committerInfo, const QString &commitMessageFile,
bool autoAddRemove)
{
// refuse to do "autoadd" on a commit with working directory only, as this will
// add all the untracked stuff.
QTC_ASSERT(!(autoAddRemove && files.isEmpty()), return)
QStringList args(QLatin1String("commit"));
if (!committerInfo.isEmpty())
args << QLatin1String("-u") << committerInfo;
args << QLatin1String("-l") << commitMessageFile << files;
args << QLatin1String("-l") << commitMessageFile;
if (autoAddRemove)
args << QLatin1String("-A");
args << files;
QSharedPointer<HgTask> job(new HgTask(repositoryRoot, args, false));
enqueueJob(job);
}