Exemplo n.º 1
0
        private static HgFileInfo[] DetectRenames(HgFileInfo[] files)
        {
            var filteredFiles = files.Where(x => x.Status != HgFileStatus.None).ToArray();

            foreach (var item in GetRenames(files))
            {
                var fileName = item.Value;
                var newFileName = item.Key;

                var file = filteredFiles.FirstOrDefault(x => x.FullName == newFileName);

                if (file != null)
                {
                    file.OriginalFile =
                        filteredFiles.FirstOrDefault(x => x.FullName == fileName) ??
                        GetRawFileInfo(fileName).FirstOrDefault();
                }
            }

            return ExcludeCaseSensitiveRenames(filteredFiles);
        }