Merge branch 'Indore-10.0.x' into Indore-2017.1.x
authorDmitry Neverov <dmitry.neverov@gmail.com>
Tue, 24 Oct 2017 11:41:58 +0000 (13:41 +0200)
committerDmitry Neverov <dmitry.neverov@gmail.com>
Tue, 24 Oct 2017 11:41:58 +0000 (13:41 +0200)
1  2 
git-agent/src/jetbrains/buildServer/buildTriggers/vcs/git/agent/UpdaterImpl.java

index 38eb17bc34b8449726945598ad75345909db467f,4e57add35d6b7c9b70dbad2da62fb26d8516f8e4..03402ae0e2b459b3a1cd74b19d3af3c621c090d3
@@@ -149,20 -136,33 +149,20 @@@ public class UpdaterImpl implements Upd
    }
  
  
 -  /**
 -   * Init .git in the target dir
 -   * @return true if there was no fetch in the target dir before
 -   * @throws VcsException in teh case of any problems
 -   */
 -  private boolean initGitRepository() throws VcsException {
 -    boolean firstFetch = false;
 +  private void initGitRepository() throws VcsException {
      if (!new File(myTargetDirectory, ".git").exists()) {
-       initDirectory();
+       initDirectory(false);
 -      firstFetch = true;
      } else {
 -      String remoteUrl = getRemoteUrl();
 -      if (!remoteUrl.equals(myRoot.getRepositoryFetchURL().toString())) {
 +      try {
 +        configureRemoteUrl(new File(myTargetDirectory, ".git"));
 +        setupExistingRepository();
 +        configureSparseCheckout();
 +      } catch (Exception e) {
 +        LOG.warn("Do clean checkout due to errors while configure use of local mirrors", e);
-         initDirectory();
+         initDirectory(true);
 -        firstFetch = true;
 -      } else {
 -        try {
 -          setupExistingRepository();
 -          configureSparseCheckout();
 -        } catch (Exception e) {
 -          LOG.warn("Do clean checkout due to errors while configure use of local mirrors", e);
 -          initDirectory(true);
 -          firstFetch = true;
 -        }
        }
      }
 -    return firstFetch;
 +    removeOrphanedIdxFiles(new File(myTargetDirectory, ".git"));
    }
  
    protected void setupNewRepository() throws VcsException {