function Compare-Repo { Param( [string] $firstlocation = "C:\sourcecodes\ProjectX_ver1", [string] $secondLocation = "C:\sourcecodes\ProjectX_ver2", [int] $takeFileNumber =10 ) $fileExtension = @(".cs", ".sln", ".user") $appToCompare = "C:\Programs\KDiff3\kdiff3.exe" # $itemsFirstlocation = gci -recurse -Path $firstlocation | where { ! $_.PSIsContainer -and $fileExtension -contains $_.Extension.ToLower()} $itemsFirstlocation = $itemsFirstlocation | select -first $takeFileNumber $itemsFirstlocation | foreach { $fileEnding = $_.FullName.Replace($firstlocation,""); $firstItem = $_.FullName; $secondItem = $secondLocation + $fileEnding ; if(Test-Path($secondItem)) { Write-Host "Comparing file $firstItem with $secondItem"; & $appToCompare $firstItem $secondItem #Run compare app } } }Więcej o KDiff3 można poczytać w obszernej dokumentacji.
sobota, 5 stycznia 2013
Porównanie 2 repozytoriów
Czy natrafiłeś na taka sytuacje, ze musiałeś porównać 2 repozytoria??
Mi parę razy się tak zdarzyło, a dokładnie musiałem porównać 2 wersje tego samego projektu. Przygotowałem skrypt, który pobiera z pierwszego repozytorium wszystkie pliki .cs, .sln i .user i porównuje je z plikiem w drugim repozytorium. Jako aplikacja do porównania plików wybrałem KDiff3. Poniżej przedstawiam skrypt w PowerShell:
Subskrybuj:
Komentarze do posta (Atom)
Jaka jest przewaga użycia narzędzia Kdiff3 rodem z KDE nad Windowsowym COMP?
OdpowiedzUsuń