Skip to content
Switch branches/tags

License Documentation - PowerShellGet PowerShell Gallery - PowerShellGet Minimum Supported PowerShell Version

Important Note

This version of PowerShellGet is currently under development and is not feature complete. As a result, we are currently not accepting PRs to this repository.
Please open an issue for any feature requests, bug reports, or questions for PowerShellGet version 3.0 (currently available as a preview release). Please note, the repository for previous versions of PowerShellGet has a new location at PowerShell/PowerShellGetv2.


PowerShellGet is a PowerShell module with commands for discovering, installing, updating and publishing the PowerShell artifacts like Modules, DSC Resources, Role Capabilities and Scripts.

PowerShellGet module is also integrated with the PackageManagement module as a provider, users can also use the PackageManagement cmdlets for discovering, installing and updating the PowerShell artifacts like Modules and Scripts.


Documentation for PowerShellGet 3.0 has not yet been published, please Click here to reference the documentation for previous versions of PowerShellGet.


  • Windows PowerShell 5.0 or newer.
  • PowerShell Core.

Get PowerShellGet Module

Please refer to our documentation for the up-to-date version on how to get the PowerShellGet Module.

Get PowerShellGet Source


  • Obtain the source

    git clone
  • Navigate to the local repository directory

PS C:\> cd c:\Repos\PowerShellGet
PS C:\Repos\PowerShellGet>
  • Install PSPackageProject module if needed
if ((Get-Module -Name PSPackageProject -ListAvailable).Count -eq 0) {
    Install-Module -Name PSPackageProject -Repository PSGallery
  • Build the project
# Build for the netstandard2.0 framework
PS C:\Repos\PowerShellGet> .\build.ps1 -Clean -Build -BuildConfiguration Debug -BuildFramework netstandard2.0

# Build for the net472 framework
PS C:\Repos\PowerShellGet> .\build.ps1 -Build -BuildConfiguration Debug -BuildFramework net472
  • Publish the module to a local repository
PS C:\Repos\PowerShellGet> .\build.ps1 -Publish
  • Run functional tests
PS C:\Repos\PowerShellGet> Invoke-PSPackageProjectTest -Type Functional
  • Import the module into a new PowerShell session
# If running PowerShell 6+
C:\> Import-Module C:\Repos\PowerShellGet\out\PowerShellGet

# If running Windows PowerShell
C:\> Import-Module C:\Repos\PowerShellGet\out\PowerShellGet\PowerShellGet.psd1

PowerShellGet consists of .NET binaries and so can be imported into a PowerShell session only once. Since the PSPackageProject module, used to build the module, has a dependency on earlier versions of PowerShellGet, the newly built module cannot be imported into that session. The new module can only be imported into a new session that has no prior imported PowerShellGet module.


PowerShellGet is the package manager for PowerShell





No releases published


No packages published