diff --git a/msvc/libgit2_shared.vcxproj b/msvc/libgit2_shared.vcxproj
new file mode 100644
index 000000000..d24586c60
--- /dev/null
+++ b/msvc/libgit2_shared.vcxproj
@@ -0,0 +1,133 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Release
+ Win32
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $(IntDir)\fileops_w32
+ $(IntDir)\fileops_w32
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Win32Proj
+
+
+
+ DynamicLibrary
+ true
+
+
+ DynamicLibrary
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+ ..\src;$(IncludePath)
+ libgit2
+
+
+ false
+ libgit2
+
+
+
+ WIN32;_DEBUG;_WINDOWS;_USRDLL;LIBGIT2_EXPORTS;ZLIB_WINAPI;%(PreprocessorDefinitions)
+ MultiThreadedDebugDLL
+ Level3
+ Disabled
+ src;%(AdditionalIncludeDirectories)
+
+
+ MachineX86
+ true
+ Windows
+ zlibwapi.lib;%(AdditionalDependencies)
+
+
+
+
+ WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBGIT2_EXPORTS;ZLIB_WINAPI;%(PreprocessorDefinitions)
+ MultiThreadedDLL
+ Level3
+ ProgramDatabase
+ ..\src;%(AdditionalIncludeDirectories)
+
+
+ MachineX86
+ true
+ Windows
+ true
+ true
+ zlibwapi.lib;%(AdditionalDependencies)
+
+
+
+
+
+
\ No newline at end of file
diff --git a/msvc/libgit2_shared.vcxproj.filters b/msvc/libgit2_shared.vcxproj.filters
new file mode 100644
index 000000000..3712b4f03
--- /dev/null
+++ b/msvc/libgit2_shared.vcxproj.filters
@@ -0,0 +1,165 @@
+
+
+
+
+ {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
+ cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
+
+
+ {93995380-89BD-4b04-88EB-625FBE52EBFB}
+ h;hpp;hxx;hm;inl;inc;xsd
+
+
+ {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
+ rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav
+
+
+ {ed3143d9-b893-48a3-8615-fe090c1cbf25}
+
+
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+
\ No newline at end of file
diff --git a/msvc/libgit2_shared_2010.sln b/msvc/libgit2_shared_2010.sln
new file mode 100644
index 000000000..3ad970313
--- /dev/null
+++ b/msvc/libgit2_shared_2010.sln
@@ -0,0 +1,20 @@
+
+Microsoft Visual Studio Solution File, Format Version 11.00
+# Visual C++ Express 2010
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libgit2_shared", "libgit2_shared.vcxproj", "{628B5A30-A7D1-B216-C57D-F8F9D5BA019C}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Win32 = Debug|Win32
+ Release|Win32 = Release|Win32
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {628B5A30-A7D1-B216-C57D-F8F9D5BA019C}.Debug|Win32.ActiveCfg = Debug|Win32
+ {628B5A30-A7D1-B216-C57D-F8F9D5BA019C}.Debug|Win32.Build.0 = Debug|Win32
+ {628B5A30-A7D1-B216-C57D-F8F9D5BA019C}.Release|Win32.ActiveCfg = Release|Win32
+ {628B5A30-A7D1-B216-C57D-F8F9D5BA019C}.Release|Win32.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal