public API_NGit NGit_Clone(string repo_Source, string repo_Clone_Name)
        {
            var repo_Clone = Temp_Cloned_Repos.pathCombine(repo_Clone_Name);

            Assert.IsFalse(repo_Clone.dirExists());

            var nGit = repo_Source.git_Clone(repo_Clone);

            Assert.IsNotNull(nGit);
            nGit.close();
            return(checkRepo(repo_Source, repo_Clone));
        }
 public void saveCloneData(Git_Clone_Data cloneData)
 {
     if (Save_Git_Clone_Data)
     {
         var results_XmlFile = Temp_Cloned_Repos.pathCombine("Git_Clone_Data.xml");
         var gitCloneData    = (results_XmlFile.fileExists())
                                 ? results_XmlFile.load <List <Git_Clone_Data> >()
                                 : new List <Git_Clone_Data>();
         gitCloneData.add(cloneData);
         gitCloneData.saveAs(results_XmlFile);
     }
 }
        public API_NGit gitExe_Clone(string repo_Source, string repo_Clone_Name)
        {
            var repo_Clone = Temp_Cloned_Repos.pathCombine(repo_Clone_Name);
            var gitCommand = "clone \"{0}\" \"{1}\"".format(repo_Source, repo_Clone_Name);

            Assert.IsFalse(repo_Clone.dirExists());

            gitExe_Execute(gitCommand, Temp_Cloned_Repos);

            Assert.IsTrue(repo_Clone.dirExists());

            return(checkRepo(repo_Source, repo_Clone));
        }
        public API_NGit gitHub_Clone(string repoName)
        {
            if (Skip_Online_Tests)
            {
                "*** Skip_Online_Tests is set to true so Skipping GitHub clone".debug();
                return(null);
            }
            var gitCloneUrl = GitHub_Repo_Path.format(repoName);
            var repo_Clone  = Temp_Cloned_Repos.pathCombine(repoName.append("_GitHub").add_RandomLetters(3));

            Assert.IsFalse(repo_Clone.dirExists());

            var nGit = gitCloneUrl.git_Clone(repo_Clone);

            Assert.IsTrue(repo_Clone.dirExists());
            Assert.IsNotNull(nGit);
            return(nGit);
        }
        // to delete


        public API_NGit local_Clone(string repoName)
        {
            var repo_Source = TM_Libraries_Folder.pathCombine(repoName);

            Assert.IsTrue(repo_Source.dirExists());
            Assert.IsTrue(repo_Source.isGitRepository());

            var repo_Clone = Temp_Cloned_Repos.pathCombine(repoName.add_RandomLetters(3));

            Assert.IsFalse(repo_Clone.dirExists());

            var nGit = repo_Source.git_Clone(repo_Clone);

            Assert.IsTrue(repo_Clone.dirExists());
            Assert.IsNotNull(nGit);
            Assert.IsTrue(repo_Clone.isGitRepository());
            Assert.IsTrue(nGit.commits_SHA1().notEmpty());
            Assert.IsTrue(nGit.files().notEmpty());
            return(nGit);
        }