DotNetMove 1.2.0

There is a newer version of this package available.
See the version list below for details.
dotnet tool install --global DotNetMove --version 1.2.0                
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest # if you are setting up this repo
dotnet tool install --local DotNetMove --version 1.2.0                
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=DotNetMove&version=1.2.0                
nuke :add-package DotNetMove --version 1.2.0                

A dotnet tool for moving projects around on disk or within a solution while automatically updating solutions and project references.

To Install

dotnet tool install -g DotNetMove

To Uninstall

dotnet tool uninstall -g DotNetMove

Usage

Moving Projects on Disk

To modify a particular solution

dotnet move disk -p MyCompany.MyProject -d C:\SomeOtherFolder -s C:\Path\To\Solution.sln

In this case, DotNetMove will recursively scan subfolders of the current folder to find your project (it expects to find MyCompany.MyProject.csproj on disk.)

It will then examine C:\Path\To\Solution.sln to ensure it includes that project.

If it does, it will then move your project folder to the provided location and modify:

  • The solution to reference the project at its new location.
  • The project references of the project so that they continue to be valid.
  • The project references of any other projects within the solution that referenced the target project so that they point to the new location.
To modify any solution that references the target project

dotnet move disk -p MyCompany.MyProject -d C:\SomeOtherFolder

This form works in a similar fashion to the above usage, except this one will find all solution files under the current folder (and sub-folders) and perform all of the updates listed above for each solution.

Moving Into Solution Folders

To modify a particular solution

dotnet move solution -p MyCompany.MyProject -d SomeFolder\SomeSubFolder -s C:\Path\To\Solution.sln

In this case, DotNetMove will recursively scan subfolders of the current folder to find your project (it expects to find MyCompany.MyProject.csproj on disk.)

It will then examine C:\Path\To\Solution.sln to ensure it includes that project.

If it does, it will then modify the solution to place that project inside of the SomeFolder\SomeSubFolder solution folder, removing it from whatever solution folder it may currently be in (if any).

To modify any solution that references the target project

dotnet move solution -p MyCompany.MyProject -d SomeFolder\SomeSubFolder

This form works in a similar fashion to the above usage, except this one will find all solution files under the current folder (and sub-folders) and update all of those that reference the target project.

Help

Executing dotnet move, dotnet move solution or dotnet move disk with no arguments will provide additional help.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp2.1 is compatible.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • .NETCoreApp 2.1

    • No dependencies.
Version Downloads Last updated
1.6.1 1,050 11/17/2018
1.6.0 827 9/8/2018
1.5.1 821 11/17/2018
1.5.0 771 8/22/2018
1.4.0 780 8/22/2018
1.3.0 810 8/22/2018
1.2.0 906 8/17/2018

This first release has several limitations:
* It can only move `.csproj` files.
* It will not function correctly if your project reference paths and paths on disk have casing differences.