| 391 | } |
| 392 | |
| 393 | KDevelop::VcsJob* GitPlugin::status(const QList<QUrl>& localLocations, KDevelop::IBasicVersionControl::RecursionMode recursion) |
| 394 | { |
| 395 | if (localLocations.empty()) |
| 396 | return makeVcsErrorJob(i18n("Did not specify the list of files"), this, OutputJob::Verbose); |
| 397 | |
| 398 | DVcsJob* job = new GitJob(urlDir(localLocations), this, OutputJob::Silent); |
| 399 | job->setType(VcsJob::Status); |
| 400 | |
| 401 | if(m_oldVersion) { |
| 402 | *job << "git" << "ls-files" << "-t" << "-m" << "-c" << "-o" << "-d" << "-k" << "--directory"; |
| 403 | connect(job, &DVcsJob::readyForParsing, this, &GitPlugin::parseGitStatusOutput_old); |
| 404 | } else { |
| 405 | *job << "git" << "status" << "--porcelain"; |
| 406 | job->setIgnoreError(true); |
| 407 | connect(job, &DVcsJob::readyForParsing, this, &GitPlugin::parseGitStatusOutput); |
| 408 | } |
| 409 | *job << "--" << (recursion == IBasicVersionControl::Recursive ? localLocations : preventRecursion(localLocations)); |
| 410 | |
| 411 | return job; |
| 412 | } |
| 413 | |
| 414 | VcsJob* GitPlugin::diff(const QUrl& fileOrDirectory, const KDevelop::VcsRevision& srcRevision, const KDevelop::VcsRevision& dstRevision, |
| 415 | IBasicVersionControl::RecursionMode recursion) |