Skip to content

Commit 5aeb87f

Browse files
authored
Merge pull request #1 from maraf/InitialMigration
Initial code migration from maraf/GitExtensions.PluginManager.
2 parents e2c1ab1 + 85050de commit 5aeb87f

File tree

191 files changed

+9503
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

191 files changed

+9503
-0
lines changed

.gitignore

Lines changed: 292 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,292 @@
1+
## Ignore Visual Studio temporary files, build results, and
2+
## files generated by popular Visual Studio add-ons.
3+
##
4+
## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore
5+
6+
# User-specific files
7+
*.suo
8+
*.user
9+
*.userosscache
10+
*.sln.docstates
11+
12+
# User-specific files (MonoDevelop/Xamarin Studio)
13+
*.userprefs
14+
15+
# Build results
16+
[Dd]ebug/
17+
[Dd]ebugPublic/
18+
[Rr]elease/
19+
[Rr]eleases/
20+
x64/
21+
x86/
22+
bld/
23+
[Bb]in/
24+
[Oo]bj/
25+
[Ll]og/
26+
27+
# Visual Studio 2015 cache/options directory
28+
.vs/
29+
# Uncomment if you have tasks that create the project's static files in wwwroot
30+
#wwwroot/
31+
32+
# MSTest test Results
33+
[Tt]est[Rr]esult*/
34+
[Bb]uild[Ll]og.*
35+
36+
# NUNIT
37+
*.VisualState.xml
38+
TestResult.xml
39+
40+
# Build Results of an ATL Project
41+
[Dd]ebugPS/
42+
[Rr]eleasePS/
43+
dlldata.c
44+
45+
# .NET Core
46+
project.lock.json
47+
project.fragment.lock.json
48+
artifacts/
49+
**/Properties/launchSettings.json
50+
51+
*_i.c
52+
*_p.c
53+
*_i.h
54+
*.ilk
55+
*.meta
56+
*.obj
57+
*.pch
58+
*.pdb
59+
*.pgc
60+
*.pgd
61+
*.rsp
62+
*.sbr
63+
*.tlb
64+
*.tli
65+
*.tlh
66+
*.tmp
67+
*.tmp_proj
68+
*.log
69+
*.vspscc
70+
*.vssscc
71+
.builds
72+
*.pidb
73+
*.svclog
74+
*.scc
75+
76+
# Chutzpah Test files
77+
_Chutzpah*
78+
79+
# Visual C++ cache files
80+
ipch/
81+
*.aps
82+
*.ncb
83+
*.opendb
84+
*.opensdf
85+
*.sdf
86+
*.cachefile
87+
*.VC.db
88+
*.VC.VC.opendb
89+
90+
# Visual Studio profiler
91+
*.psess
92+
*.vsp
93+
*.vspx
94+
*.sap
95+
96+
# TFS 2012 Local Workspace
97+
$tf/
98+
99+
# Guidance Automation Toolkit
100+
*.gpState
101+
102+
# ReSharper is a .NET coding add-in
103+
_ReSharper*/
104+
*.[Rr]e[Ss]harper
105+
*.DotSettings.user
106+
107+
# JustCode is a .NET coding add-in
108+
.JustCode
109+
110+
# TeamCity is a build add-in
111+
_TeamCity*
112+
113+
# DotCover is a Code Coverage Tool
114+
*.dotCover
115+
116+
# Visual Studio code coverage results
117+
*.coverage
118+
*.coveragexml
119+
120+
# NCrunch
121+
_NCrunch_*
122+
.*crunch*.local.xml
123+
nCrunchTemp_*
124+
125+
# MightyMoose
126+
*.mm.*
127+
AutoTest.Net/
128+
129+
# Web workbench (sass)
130+
.sass-cache/
131+
132+
# Installshield output folder
133+
[Ee]xpress/
134+
135+
# DocProject is a documentation generator add-in
136+
DocProject/buildhelp/
137+
DocProject/Help/*.HxT
138+
DocProject/Help/*.HxC
139+
DocProject/Help/*.hhc
140+
DocProject/Help/*.hhk
141+
DocProject/Help/*.hhp
142+
DocProject/Help/Html2
143+
DocProject/Help/html
144+
145+
# Click-Once directory
146+
publish/
147+
148+
# Publish Web Output
149+
*.[Pp]ublish.xml
150+
*.azurePubxml
151+
# TODO: Comment the next line if you want to checkin your web deploy settings
152+
# but database connection strings (with potential passwords) will be unencrypted
153+
*.pubxml
154+
*.publishproj
155+
156+
# Microsoft Azure Web App publish settings. Comment the next line if you want to
157+
# checkin your Azure Web App publish settings, but sensitive information contained
158+
# in these scripts will be unencrypted
159+
PublishScripts/
160+
161+
# NuGet Packages
162+
*.nupkg
163+
!**/data/NuGetFeed/*.nupkg
164+
# The packages folder can be ignored because of Package Restore
165+
**/packages/*
166+
# except build/, which is used as an MSBuild target.
167+
!**/packages/build/
168+
# Uncomment if necessary however generally it will be regenerated when needed
169+
#!**/packages/repositories.config
170+
# NuGet v3's project.json files produces more ignorable files
171+
*.nuget.props
172+
*.nuget.targets
173+
174+
# Microsoft Azure Build Output
175+
csx/
176+
*.build.csdef
177+
178+
# Microsoft Azure Emulator
179+
ecf/
180+
rcf/
181+
182+
# Windows Store app package directories and files
183+
AppPackages/
184+
BundleArtifacts/
185+
Package.StoreAssociation.xml
186+
_pkginfo.txt
187+
188+
# Visual Studio cache files
189+
# files ending in .cache can be ignored
190+
*.[Cc]ache
191+
# but keep track of directories ending in .cache
192+
!*.[Cc]ache/
193+
194+
# Others
195+
ClientBin/
196+
~$*
197+
*~
198+
*.dbmdl
199+
*.dbproj.schemaview
200+
*.jfm
201+
*.pfx
202+
*.publishsettings
203+
orleans.codegen.cs
204+
205+
# Since there are multiple workflows, uncomment next line to ignore bower_components
206+
# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
207+
#bower_components/
208+
209+
# RIA/Silverlight projects
210+
Generated_Code/
211+
212+
# Backup & report files from converting an old project file
213+
# to a newer Visual Studio version. Backup files are not needed,
214+
# because we have git ;-)
215+
_UpgradeReport_Files/
216+
Backup*/
217+
UpgradeLog*.XML
218+
UpgradeLog*.htm
219+
220+
# SQL Server files
221+
*.mdf
222+
*.ldf
223+
*.ndf
224+
225+
# Business Intelligence projects
226+
*.rdl.data
227+
*.bim.layout
228+
*.bim_*.settings
229+
230+
# Microsoft Fakes
231+
FakesAssemblies/
232+
233+
# GhostDoc plugin setting file
234+
*.GhostDoc.xml
235+
236+
# Node.js Tools for Visual Studio
237+
.ntvs_analysis.dat
238+
node_modules/
239+
240+
# Typescript v1 declaration files
241+
typings/
242+
243+
# Visual Studio 6 build log
244+
*.plg
245+
246+
# Visual Studio 6 workspace options file
247+
*.opt
248+
249+
# Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
250+
*.vbw
251+
252+
# Visual Studio LightSwitch build output
253+
**/*.HTMLClient/GeneratedArtifacts
254+
**/*.DesktopClient/GeneratedArtifacts
255+
**/*.DesktopClient/ModelManifest.xml
256+
**/*.Server/GeneratedArtifacts
257+
**/*.Server/ModelManifest.xml
258+
_Pvt_Extensions
259+
260+
# Paket dependency manager
261+
.paket/paket.exe
262+
paket-files/
263+
264+
# FAKE - F# Make
265+
.fake/
266+
267+
# JetBrains Rider
268+
.idea/
269+
*.sln.iml
270+
271+
# CodeRush
272+
.cr/
273+
274+
# Python Tools for Visual Studio (PTVS)
275+
__pycache__/
276+
*.pyc
277+
278+
# Cake - Uncomment if you are using it
279+
# tools/**
280+
# !tools/packages.config
281+
282+
# Telerik's JustMock configuration file
283+
*.jmconfig
284+
285+
# BizTalk build output
286+
*.btp.cs
287+
*.btm.cs
288+
*.odx.cs
289+
*.xsd.cs
290+
291+
references/
292+
*.zip

GitExtensions.PluginManager.sln

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
2+
Microsoft Visual Studio Solution File, Format Version 12.00
3+
# Visual Studio 15
4+
VisualStudioVersion = 15.0.27703.2000
5+
MinimumVisualStudioVersion = 10.0.40219.1
6+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "GitExtensions.PluginManager", "src\GitExtensions.PluginManager\GitExtensions.PluginManager.csproj", "{4EB0566E-6D4F-43AF-AA97-2A15ABB66787}"
7+
EndProject
8+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PackageManager.UI", "src\PackageManager.UI\PackageManager.UI.csproj", "{6F4FA02A-B061-4607-925E-27B122DE60BC}"
9+
EndProject
10+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PackageManager", "src\PackageManager\PackageManager.csproj", "{3B5E3720-B3CB-4A12-B2D4-6BCB6BE78FF1}"
11+
EndProject
12+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PackageManager.NuGet", "src\PackageManager.NuGet\PackageManager.NuGet.csproj", "{B302D166-37CE-439D-8AE1-0CCB80BAD332}"
13+
EndProject
14+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PackageManager.Tests", "test\PackageManager.Tests\PackageManager.Tests.csproj", "{72134702-9CC0-408F-9E07-B4D59C9D7E43}"
15+
EndProject
16+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PackageManager.Cli", "src\PackageManager.Cli\PackageManager.Cli.csproj", "{E7AD4376-D8B1-469D-A2E3-38059A5EB152}"
17+
EndProject
18+
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PackageManager.NuGet.Tests", "test\PackageManager.NuGet.Tests\PackageManager.NuGet.Tests.csproj", "{7EE3B4B1-0BAA-4EB3-BBCB-30BEA09019A3}"
19+
EndProject
20+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{7184D694-3B8B-4C4D-BD6E-7EBF73AB9CCA}"
21+
EndProject
22+
Global
23+
GlobalSection(SolutionConfigurationPlatforms) = preSolution
24+
Debug|Any CPU = Debug|Any CPU
25+
Release|Any CPU = Release|Any CPU
26+
EndGlobalSection
27+
GlobalSection(ProjectConfigurationPlatforms) = postSolution
28+
{6F4FA02A-B061-4607-925E-27B122DE60BC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
29+
{6F4FA02A-B061-4607-925E-27B122DE60BC}.Debug|Any CPU.Build.0 = Debug|Any CPU
30+
{6F4FA02A-B061-4607-925E-27B122DE60BC}.Release|Any CPU.ActiveCfg = Release|Any CPU
31+
{6F4FA02A-B061-4607-925E-27B122DE60BC}.Release|Any CPU.Build.0 = Release|Any CPU
32+
{3B5E3720-B3CB-4A12-B2D4-6BCB6BE78FF1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
33+
{3B5E3720-B3CB-4A12-B2D4-6BCB6BE78FF1}.Debug|Any CPU.Build.0 = Debug|Any CPU
34+
{3B5E3720-B3CB-4A12-B2D4-6BCB6BE78FF1}.Release|Any CPU.ActiveCfg = Release|Any CPU
35+
{3B5E3720-B3CB-4A12-B2D4-6BCB6BE78FF1}.Release|Any CPU.Build.0 = Release|Any CPU
36+
{B302D166-37CE-439D-8AE1-0CCB80BAD332}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
37+
{B302D166-37CE-439D-8AE1-0CCB80BAD332}.Debug|Any CPU.Build.0 = Debug|Any CPU
38+
{B302D166-37CE-439D-8AE1-0CCB80BAD332}.Release|Any CPU.ActiveCfg = Release|Any CPU
39+
{B302D166-37CE-439D-8AE1-0CCB80BAD332}.Release|Any CPU.Build.0 = Release|Any CPU
40+
{4EB0566E-6D4F-43AF-AA97-2A15ABB66787}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
41+
{4EB0566E-6D4F-43AF-AA97-2A15ABB66787}.Debug|Any CPU.Build.0 = Debug|Any CPU
42+
{4EB0566E-6D4F-43AF-AA97-2A15ABB66787}.Release|Any CPU.ActiveCfg = Release|Any CPU
43+
{4EB0566E-6D4F-43AF-AA97-2A15ABB66787}.Release|Any CPU.Build.0 = Release|Any CPU
44+
{72134702-9CC0-408F-9E07-B4D59C9D7E43}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
45+
{72134702-9CC0-408F-9E07-B4D59C9D7E43}.Debug|Any CPU.Build.0 = Debug|Any CPU
46+
{72134702-9CC0-408F-9E07-B4D59C9D7E43}.Release|Any CPU.ActiveCfg = Release|Any CPU
47+
{72134702-9CC0-408F-9E07-B4D59C9D7E43}.Release|Any CPU.Build.0 = Release|Any CPU
48+
{E7AD4376-D8B1-469D-A2E3-38059A5EB152}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
49+
{E7AD4376-D8B1-469D-A2E3-38059A5EB152}.Debug|Any CPU.Build.0 = Debug|Any CPU
50+
{E7AD4376-D8B1-469D-A2E3-38059A5EB152}.Release|Any CPU.ActiveCfg = Release|Any CPU
51+
{E7AD4376-D8B1-469D-A2E3-38059A5EB152}.Release|Any CPU.Build.0 = Release|Any CPU
52+
{7EE3B4B1-0BAA-4EB3-BBCB-30BEA09019A3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
53+
{7EE3B4B1-0BAA-4EB3-BBCB-30BEA09019A3}.Debug|Any CPU.Build.0 = Debug|Any CPU
54+
{7EE3B4B1-0BAA-4EB3-BBCB-30BEA09019A3}.Release|Any CPU.ActiveCfg = Release|Any CPU
55+
{7EE3B4B1-0BAA-4EB3-BBCB-30BEA09019A3}.Release|Any CPU.Build.0 = Release|Any CPU
56+
EndGlobalSection
57+
GlobalSection(SolutionProperties) = preSolution
58+
HideSolutionNode = FALSE
59+
EndGlobalSection
60+
GlobalSection(NestedProjects) = preSolution
61+
{72134702-9CC0-408F-9E07-B4D59C9D7E43} = {7184D694-3B8B-4C4D-BD6E-7EBF73AB9CCA}
62+
{7EE3B4B1-0BAA-4EB3-BBCB-30BEA09019A3} = {7184D694-3B8B-4C4D-BD6E-7EBF73AB9CCA}
63+
EndGlobalSection
64+
GlobalSection(ExtensibilityGlobals) = postSolution
65+
SolutionGuid = {B0C0D2AD-4006-495A-82B5-46B74FC2DB24}
66+
EndGlobalSection
67+
EndGlobal

README.md

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# GitExtensions.PluginManager
2+
NuGet based plugin manager for GitExtensions
3+
4+
![Preview](/assets/screenshot-search.png)
5+
6+
Repository with some example plugins - https://www.myget.org/F/neptuo-gitextensions/api/v2.<br>
7+
Nightly builds of PluginManager available at Appveyor - https://ci.appveyor.com/nuget/gitextensions-pluginmanager.
8+
9+
### Appveyor
10+
11+
[![Build status](https://ci.appveyor.com/api/projects/status/k3y0frp1pgsyepwh?svg=true)](https://ci.appveyor.com/project/neptuo/gitextensions-pluginmanager)
12+
13+
### Browsing for packages
14+
PluginManager integrated into GitExtensions filters packages with dependency on `GitExtensions.Plugins`. This package is right now a kind of meta package and it is used to mark nuget packages intended as GitExtensions plugins.
15+
16+
We are heading to use the official nuget.org feed to distribute plugin packages, but there is a bug (#67) which prevents us from using it.
17+
Right now it is recommended to use https://www.myget.org/F/neptuo-gitextensions/api/v2.
18+
19+
### Command line arguments
20+
PluginManager is designed to be a reusable tool to manage plugins distributed as nuget packages. This repository contains an integration package for GitExtensins.
21+
As a standalone application, PluginManager supports these command line arguments:
22+
23+
- `--path` (required) - A root path to a directory where to install packages.
24+
- `--selfpackageid` (optional) - A package id to indicate which package should be treated as a package for self update.
25+
- `--dependencies` (optional) - A comma separated list of package ids and versions that are required in package to be compatible (Eg. `GitExtensions.Plugins-v3.0,TestA,TestB-v1`).
26+
- `--monikers` (optional) - A comma separated list of .NET framework monikers to filter package content during extraction (Eg. `net461,netstandard2.0`).
27+
- `--processnamestokillbeforechange` - A comma separated list of process names to be killed before any changes being processed (it is used to kill all instances on GitExtensions before installing/uninstalling dlls, that might be locked).
28+
29+
### Icons
30+
31+
Some icons by Yusuke [Kamiyamane](http://p.yusukekamiyamane.com).<br>
32+
Some other by [Material Design](https://material.io/tools/icons).

assets/screenshot-search.png

31.7 KB
Loading

0 commit comments

Comments
 (0)