Exemple #1
0
        private void WriteFileIfDifferent(ProjectFile project, FileToWrite file)
        {
            Log("Processing file: " + file.Path);
            if (UseTfsToCheckoutFiles)
            {
                if (File.Exists(file.Path))
                {
                    Trace.TraceInformation(Path.GetFileName(file.Path) + " Checking out and updating if different.");
                    var tempFile = Path.Combine(file.Directory, "zzzTempEarlyBoundGenerator." + Path.GetFileName(file.Path) + ".tmp");
                    try
                    {
                        Log("Creating Temp File " + tempFile);
                        File.WriteAllText(tempFile, file.Contents);
                        var hasChanged = Tfs.AreDifferent(file.Path, tempFile);
                        if (hasChanged)
                        {
                            Console.WriteLine($"{file.Path} was changed.  Checking Out from TFS.");
                            Tfs.Checkout(file.Path);
                            Log("Updating File locally");
                            File.Copy(tempFile, file.Path, true);
                        }
                        var message = file.Path + $" was {(hasChanged ? "" : "un")}changed.";
                        if (file.IsMainFile)
                        {
                            Console.WriteLine(message);
                        }
                        else
                        {
                            Log(message);
                        }
                    }
                    finally
                    {
                        File.Delete(tempFile);
                    }
                }
                else
                {
                    File.WriteAllText(file.Path, file.Contents);
                    Tfs.Add(file.Path);
                    Console.WriteLine(file.Path + " created.");
                    project.AddFileIfMissing(file.Path);
                }
                return;
            }

            EnsureFileIsAccessible(file.Path);
            project.AddFileIfMissing(file.Path);

            Trace.TraceInformation(Path.GetFileName(file.Path) + " created / updated.");
            Log("Writing file: " + file.Path);
            File.WriteAllText(file.Path, file.Contents);
            Log("Completed file: " + file);
        }
Exemple #2
0
 private void WriteFilesForTfs(ProjectFile project, FileToWrite file)
 {
     Log("Processing file: " + file.Path);
     if (File.Exists(file.Path))
     {
         var tfsFile = File.ReadAllText(file.Path);
         if (tfsFile.Equals(file.Contents))
         {
             Log(tfsFile);
             Log(file.Contents);
             Log(file.Path + " was unchanged.");
             return;
         }
         file.TempFile = Path.Combine(file.Directory, "zzzTempEarlyBoundGenerator." + Path.GetFileName(file.Path) + ".tmp");
         Log("Creating Temp File " + file.TempFile);
         File.WriteAllText(file.TempFile, file.Contents);
         file.HasChanged = true;
     }
     else
     {
         File.WriteAllText(file.Path, file.Contents);
         Tfs.Add(file.Path);
         Console.WriteLine(file.Path + " created.");
         project.AddFileIfMissing(file.Path);
     }
 }
        private void WriteFileIfDifferent(ProjectFile project, FileToCreate file)
        {
            SetSourceControlInfo(file);
            if (!file.HasChanged)
            {
                if (file.IsMainFile)
                {
                    if (UseTfsToCheckoutFiles)
                    {
                        TfsWorkspace.Undo(file.Path);
                    }
                    Console.WriteLine(file.Path + " was unchanged.");
                }
                return;
            }

            EnsureFileIsAccessible(file.Path);
            project.AddFileIfMissing(file.Path);

            Trace.TraceInformation(Path.GetFileName(file.Path) + " created / updated..");
            Log("Writing file: " + file.Path);
            File.WriteAllText(file.Path, file.Contents);
            Log("Completed file: " + file);
        }
        private void WriteFileIfDifferent(ProjectFile project, FileToCreate file)
        {
            SetSourceControlInfo(file);
            if (!file.HasChanged)
            {
                if (file.IsMainFile)
                {
                    if (UseTfsToCheckoutFiles)
                    {
                        TfsWorkspace.Undo(file.Path);
                    }
                    Console.WriteLine(file.Path + " was unchanged.");
                }
                return;
            }

            EnsureFileIsAccessible(file.Path);
            project.AddFileIfMissing(file.Path);

            Trace.TraceInformation(Path.GetFileName(file.Path) + " created / updated..");
            Log("Writing file: " + file.Path);
            File.WriteAllText(file.Path, file.Contents);
            Log("Completed file: " + file);
        }