Exemple #1
0
 /// <summary>
 /// Executes the
 /// <code>Init</code>
 /// command.
 /// </summary>
 /// <returns>
 /// the newly created
 /// <code>Git</code>
 /// object with associated repository
 /// </returns>
 /// <exception cref="NGit.Api.Errors.GitAPIException"></exception>
 public virtual Git Call()
 {
     try
     {
         RepositoryBuilder builder = new RepositoryBuilder();
         if (bare)
         {
             builder.SetBare();
         }
         builder.ReadEnvironment();
         if (directory != null)
         {
             FilePath d = directory;
             if (!bare)
             {
                 d = new FilePath(d, Constants.DOT_GIT);
             }
             builder.SetGitDir(d);
         }
         else
         {
             if (builder.GetGitDir() == null)
             {
                 FilePath d = new FilePath(".");
                 if (d.GetParentFile() != null)
                 {
                     d = d.GetParentFile();
                 }
                 if (!bare)
                 {
                     d = new FilePath(d, Constants.DOT_GIT);
                 }
                 builder.SetGitDir(d);
             }
         }
         Repository repository = builder.Build();
         if (!repository.ObjectDatabase.Exists())
         {
             repository.Create(bare);
         }
         return(new Git(repository));
     }
     catch (IOException e)
     {
         throw new JGitInternalException(e.Message, e);
     }
 }
        private Repository CreateNew()
        {
            var builder = new RepositoryBuilder();

            builder.ReadEnvironment();
            builder.FindGitDir(Path);

            return builder.Build();
        }