From 646bceffe019fac667558037aeaa35a820593d6d Mon Sep 17 00:00:00 2001 From: furmangg Date: Mon, 29 Apr 2019 17:29:20 -0500 Subject: [PATCH 1/5] hopefully working around VS crash mentioned in issue #63 --- SSIS/VariablesWindowPlugin.cs | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/SSIS/VariablesWindowPlugin.cs b/SSIS/VariablesWindowPlugin.cs index fc0b3b2..06c090b 100644 --- a/SSIS/VariablesWindowPlugin.cs +++ b/SSIS/VariablesWindowPlugin.cs @@ -196,19 +196,26 @@ private void HookupVariablesWindow(Window GotFocus) private void grid_MouseButtonClicked(object sender, MouseButtonClickedEventArgs args) { - // Fragile, as relies on hardcoded index. We are trying to replicate Microsoft.DataTransformationServices.Design.VariablesToolWindow.dlgGridControl1_MouseButtonClicked method check - if (args.Button == MouseButtons.Left && args.ColumnIndex == 6) + try { - // Dumbass, the args.RowIndex is a long, but all the grid methods that accept a row index are int! - EditExpressionButtonClick((int)args.RowIndex, args.ColumnIndex); - } + // Fragile, as relies on hardcoded index. We are trying to replicate Microsoft.DataTransformationServices.Design.VariablesToolWindow.dlgGridControl1_MouseButtonClicked method check + if (args.Button == MouseButtons.Left && args.ColumnIndex == 6) + { + // Dumbass, the args.RowIndex is a long, but all the grid methods that accept a row index are int! + EditExpressionButtonClick((int)args.RowIndex, args.ColumnIndex); + } + } catch { } } //only way I could find to monitor when row data in the grid changes void grid_Invalidated(object sender, InvalidateEventArgs e) { - CheckButtonIcons(); - RefreshHighlights(); + try + { + CheckButtonIcons(); + RefreshHighlights(); + } + catch { } } private void CheckButtonIcons() From 283e60cc25c5a928ad0672a67768e7fa3459e3b4 Mon Sep 17 00:00:00 2001 From: furmangg Date: Tue, 30 Apr 2019 12:26:01 -0500 Subject: [PATCH 2/5] fixing object reference error mentioned in issue #64 --- SSIS/DeployPackagesPlugin.cs | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/SSIS/DeployPackagesPlugin.cs b/SSIS/DeployPackagesPlugin.cs index 317f075..8b7e241 100644 --- a/SSIS/DeployPackagesPlugin.cs +++ b/SSIS/DeployPackagesPlugin.cs @@ -509,9 +509,19 @@ private void cmdButtonProperties_Click(CommandBarButton Ctrl, ref bool CancelDef Microsoft.DataWarehouse.VsIntegration.Shell.Project.Extensibility.ProjectExt proj = GetSelectedProjectReference(); - if (proj == null || proj.Kind != BIDSProjectKinds.SSIS) return; + if (proj == null || proj.Kind != BIDSProjectKinds.SSIS) + { + CancelDefault = false; //let the Microsoft code fire + return; + } sharedDataWarehouseInterfaces::Microsoft.DataWarehouse.Interfaces.IConfigurationSettings settings = (sharedDataWarehouseInterfaces::Microsoft.DataWarehouse.Interfaces.IConfigurationSettings)((System.IServiceProvider)proj).GetService(typeof(sharedDataWarehouseInterfaces::Microsoft.DataWarehouse.Interfaces.IConfigurationSettings)); + if (settings == null) + { + CancelDefault = false; //let the Microsoft code fire + return; + } + projectManager = (Microsoft.DataWarehouse.Project.DataWarehouseProjectManager)settings.GetType().InvokeMember("ProjectManager", System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.GetProperty | System.Reflection.BindingFlags.FlattenHierarchy, null, settings, null); if (!IsLegacyDeploymentMode(projectManager)) From 5f1c5eabee512aa1544dcac7c02cd9f45f524c95 Mon Sep 17 00:00:00 2001 From: furmangg Date: Wed, 1 May 2019 09:45:18 -0500 Subject: [PATCH 3/5] further fix for issue #64 --- SSIS/DeployPackagesPlugin.cs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/SSIS/DeployPackagesPlugin.cs b/SSIS/DeployPackagesPlugin.cs index 8b7e241..647e032 100644 --- a/SSIS/DeployPackagesPlugin.cs +++ b/SSIS/DeployPackagesPlugin.cs @@ -154,6 +154,11 @@ public override void Exec() } sharedDataWarehouseInterfaces::Microsoft.DataWarehouse.Interfaces.IConfigurationSettings settings = (sharedDataWarehouseInterfaces::Microsoft.DataWarehouse.Interfaces.IConfigurationSettings)((System.IServiceProvider)projects[0]).GetService(typeof(sharedDataWarehouseInterfaces::Microsoft.DataWarehouse.Interfaces.IConfigurationSettings)); + if (settings == null) + { + MessageBox.Show("Could not get IConfigurationSettings"); + return; + } DataWarehouseProjectManager projectManager = (DataWarehouseProjectManager)settings.GetType().InvokeMember("ProjectManager", System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.GetProperty | System.Reflection.BindingFlags.FlattenHierarchy, null, settings, null); this.ApplicationObject.ToolWindows.OutputWindow.Parent.SetFocus(); @@ -201,6 +206,11 @@ public override void Exec() private void DeployProject(Project proj, IOutputWindow outputWindow, System.Array selectedItems, bool bCreateBat) { sharedDataWarehouseInterfaces::Microsoft.DataWarehouse.Interfaces.IConfigurationSettings settings = (sharedDataWarehouseInterfaces::Microsoft.DataWarehouse.Interfaces.IConfigurationSettings)((System.IServiceProvider)proj).GetService(typeof(sharedDataWarehouseInterfaces::Microsoft.DataWarehouse.Interfaces.IConfigurationSettings)); + if (settings == null) + { + MessageBox.Show("Could not get IConfigurationSettings"); + return; + } DataWarehouseProjectManager projectManager = (DataWarehouseProjectManager)settings.GetType().InvokeMember("ProjectManager", System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.GetProperty | System.Reflection.BindingFlags.FlattenHierarchy, null, settings, null); StringBuilder sBatFileContents = new StringBuilder(); From 686e311119e74e16ecc4cd1e5c2d7712fd91588d Mon Sep 17 00:00:00 2001 From: furmangg Date: Wed, 1 May 2019 09:46:30 -0500 Subject: [PATCH 4/5] fix for issue #63 Microsoft.DataWarehouse.Interfaces.DLL appears in the BIShared extension folder as version 15.0.0 but it also appears in the SSAS and SSRS extension folders as Microsoft.DataWarehouse.Interfaces.DLL with version 15.2.0. --- .../Microsoft.DataWarehouse.Interfaces.AS.DLL | Bin 0 -> 41272 bytes .../Microsoft.DataWarehouse.Interfaces.DLL | Bin 41272 -> 39528 bytes SQL2019_VS2017_BidsHelper.csproj | 19 +++++++++++------- SSIS/VariablesWindowPlugin.cs | 17 ++++++++++++++-- 4 files changed, 27 insertions(+), 9 deletions(-) create mode 100644 DLLs/SQL2019/Reference/FromASFolder/Microsoft.DataWarehouse.Interfaces.AS.DLL diff --git a/DLLs/SQL2019/Reference/FromASFolder/Microsoft.DataWarehouse.Interfaces.AS.DLL b/DLLs/SQL2019/Reference/FromASFolder/Microsoft.DataWarehouse.Interfaces.AS.DLL new file mode 100644 index 0000000000000000000000000000000000000000..6d95aeb35883c4fe5f9b8494635395a621be8f3a GIT binary patch literal 41272 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 literal 0 HcmV?d00001 diff --git a/DLLs/SQL2019/Reference/Microsoft.DataWarehouse.Interfaces.DLL b/DLLs/SQL2019/Reference/Microsoft.DataWarehouse.Interfaces.DLL index 6d95aeb35883c4fe5f9b8494635395a621be8f3a..793a465e814ba66c2124d0a4dce69ae1084e0524 100644 GIT binary patch delta 14065 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 UkH4EAG$QIojQ9Aje0VYXFaNO~+5i9m delta 15917 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 S#m9V>+?}*s^VA|T82lf2=&vFG diff --git a/SQL2019_VS2017_BidsHelper.csproj b/SQL2019_VS2017_BidsHelper.csproj index 26a4363..d512f94 100644 --- a/SQL2019_VS2017_BidsHelper.csproj +++ b/SQL2019_VS2017_BidsHelper.csproj @@ -745,6 +745,17 @@ asAlias False + + DLLs\SQL2019\Reference\Microsoft.DataWarehouse.Interfaces.DLL + sharedDataWarehouseInterfaces + False + + + DLLs\SQL2019\Reference\FromASFolder\Microsoft.DataWarehouse.Interfaces.AS.DLL + False + asDataWarehouseInterfaces + False + True DLLs\SQL2019\Reference\Microsoft.DataWarehouse.RS.dll @@ -833,7 +844,7 @@ True DLLs\SQL2019\Reference\Microsoft.SqlServer.DlgGrid.dll - False + True True @@ -897,12 +908,6 @@ DLLs\SQL2019\Reference\Microsoft.DataWarehouse.DLL False - - False - DLLs\SQL2019\Reference\Microsoft.DataWarehouse.Interfaces.DLL - False - sharedDataWarehouseInterfaces - DLLs\SQL2019\Reference\Microsoft.DataWarehouse.VsIntegration.DLL False diff --git a/SSIS/VariablesWindowPlugin.cs b/SSIS/VariablesWindowPlugin.cs index 06c090b..995b84e 100644 --- a/SSIS/VariablesWindowPlugin.cs +++ b/SSIS/VariablesWindowPlugin.cs @@ -108,7 +108,19 @@ private void HookupVariablesWindow(Window GotFocus) continue; } - IDesignerToolWindowService service = (IDesignerToolWindowService)designer.GetService(typeof(IDesignerToolWindowService)); + + package.Log.Debug(designer.GetType().FullName + " from " + designer.GetType().Assembly.Location); + package.Log.Debug(typeof(IDesignerToolWindowService).FullName + " from " + typeof(IDesignerToolWindowService).Assembly.Location); + var obj = designer.GetService(typeof(IDesignerToolWindowService)); + if (obj != null) + package.Log.Debug(obj.GetType().FullName + " from " + obj.GetType().Assembly.Location); + else + package.Log.Debug("obj is null"); + + + + + IDesignerToolWindowService service = designer.GetService(typeof(IDesignerToolWindowService)) as IDesignerToolWindowService; if (service == null) continue; IDesignerToolWindow toolWindow = service.GetToolWindow(new Guid(SSIS_VARIABLES_TOOL_WINDOW_KIND), 0); if (toolWindow == null) continue; @@ -190,7 +202,8 @@ private void HookupVariablesWindow(Window GotFocus) } catch (Exception ex) { - MessageBox.Show(ex.Message + "\r\n\r\n" + ex.StackTrace, DefaultMessageBoxCaption, MessageBoxButtons.OK, MessageBoxIcon.Error); + package.Log.Exception("Problem in HookupVariablesWindow", ex); + //MessageBox.Show(ex.Message + "\r\n\r\n" + ex.StackTrace, DefaultMessageBoxCaption, MessageBoxButtons.OK, MessageBoxIcon.Error); } } From 7a0d1829f16716ec91dbd0a6521c2eb1341b4791 Mon Sep 17 00:00:00 2001 From: furmangg Date: Fri, 3 May 2019 14:52:45 -0500 Subject: [PATCH 5/5] 2.3.2 release Git support for Smart Diff plus bug fixes from previous commits --- Core/VersionInfo.cs | 2 +- DLLs/SQL2019/Reference/LibGit2Sharp.dll | Bin 0 -> 445616 bytes Manifest/SQL2017/VSPackageVS2017.resx | 2 +- .../SQL2017/source.extension.vsixmanifest | 2 +- Manifest/SQL2019/VSPackageVS2019.resx | 2 +- .../SQL2019/source.extension.vsixmanifest | 2 +- SQL2019_VS2017_BidsHelper.csproj | 7 + SQL2019_VS2019_BidsHelper.csproj | 26 +- SSIS/SmartDiff.cs | 14 +- SSIS/SmartDiffPlugin.cs | 67 ++++- core/GitHelper.cs | 273 ++++++++++++++++++ 11 files changed, 365 insertions(+), 32 deletions(-) create mode 100644 DLLs/SQL2019/Reference/LibGit2Sharp.dll create mode 100644 core/GitHelper.cs diff --git a/Core/VersionInfo.cs b/Core/VersionInfo.cs index 51f43b1..0d55c26 100644 --- a/Core/VersionInfo.cs +++ b/Core/VersionInfo.cs @@ -9,7 +9,7 @@ public class VersionInfo { // BIDS Helper Assembly & VSIX Version // N.B. Manually update the manifest file, if you change this - See source.extension.vsixmanifest - public const string Version = "2.3.1"; + public const string Version = "2.3.2"; private static readonly object lockResource = new object(); private static Version visualStudioVersion; diff --git a/DLLs/SQL2019/Reference/LibGit2Sharp.dll b/DLLs/SQL2019/Reference/LibGit2Sharp.dll new file mode 100644 index 0000000000000000000000000000000000000000..f2113e32e5a7208ab6c9e98af05f49729b66d6a3 GIT binary patch literal 445616 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
_)-llhr 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�Nka!s={XWmTf)Y~tn(`htZ7HG6s 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 literal 0 HcmV?d00001 diff --git a/Manifest/SQL2017/VSPackageVS2017.resx b/Manifest/SQL2017/VSPackageVS2017.resx index 002dd2e..13d721b 100644 --- a/Manifest/SQL2017/VSPackageVS2017.resx +++ b/Manifest/SQL2017/VSPackageVS2017.resx @@ -121,7 +121,7 @@ BI Developer Extensions for Visual Studio 2017 - BI Developer Extensions v2.3.1 for Visual Studio 2017 - An add-in to extend SQL Server Data Tools + BI Developer Extensions v2.3.2 for Visual Studio 2017 - An add-in to extend SQL Server Data Tools diff --git a/Manifest/SQL2017/source.extension.vsixmanifest b/Manifest/SQL2017/source.extension.vsixmanifest index 6f3303f..534f1fb 100644 --- a/Manifest/SQL2017/source.extension.vsixmanifest +++ b/Manifest/SQL2017/source.extension.vsixmanifest @@ -1,7 +1,7 @@  - + BI Developer Extensions for Visual Studio 2017 BI Developer Extensions (formerly BIDS Helper) is an extension for BIDS / SSDT that includes numerous enhancements for SQL Server BI projects https://bideveloperextensions.github.io diff --git a/Manifest/SQL2019/VSPackageVS2019.resx b/Manifest/SQL2019/VSPackageVS2019.resx index 1257daa..d052132 100644 --- a/Manifest/SQL2019/VSPackageVS2019.resx +++ b/Manifest/SQL2019/VSPackageVS2019.resx @@ -121,7 +121,7 @@ BI Developer Extensions for Visual Studio 2019 - BI Developer Extensions v2.3.0 for Visual Studio 2019 - An add-in to extend SQL Server Data Tools + BI Developer Extensions v2.3.2 for Visual Studio 2019 - An add-in to extend SQL Server Data Tools diff --git a/Manifest/SQL2019/source.extension.vsixmanifest b/Manifest/SQL2019/source.extension.vsixmanifest index d385622..cc4af9b 100644 --- a/Manifest/SQL2019/source.extension.vsixmanifest +++ b/Manifest/SQL2019/source.extension.vsixmanifest @@ -1,7 +1,7 @@  - + BI Developer Extensions for Visual Studio 2019 BI Developer Extensions (formerly BIDS Helper) is an extension for BIDS / SSDT that includes numerous enhancements for SQL Server BI projects https://bideveloperextensions.github.io diff --git a/SQL2019_VS2017_BidsHelper.csproj b/SQL2019_VS2017_BidsHelper.csproj index d512f94..12cb8e9 100644 --- a/SQL2019_VS2017_BidsHelper.csproj +++ b/SQL2019_VS2017_BidsHelper.csproj @@ -103,6 +103,7 @@ + @@ -525,6 +526,8 @@ + + @@ -719,6 +722,10 @@ False DLLs\SQL2019\ExpressionEditor.dll + + DLLs\SQL2019\Reference\LibGit2Sharp.dll + False + DLLs\SQL2019\Reference\Microsoft.AnalysisServices.dll True diff --git a/SQL2019_VS2019_BidsHelper.csproj b/SQL2019_VS2019_BidsHelper.csproj index e732277..5d037d5 100644 --- a/SQL2019_VS2019_BidsHelper.csproj +++ b/SQL2019_VS2019_BidsHelper.csproj @@ -103,6 +103,7 @@ + @@ -525,6 +526,8 @@ + + @@ -719,6 +722,10 @@ False DLLs\SQL2019\ExpressionEditor.dll + + DLLs\SQL2019\Reference\LibGit2Sharp.dll + False + DLLs\SQL2019\Reference\Microsoft.AnalysisServices.dll True @@ -745,6 +752,17 @@ asAlias False + + DLLs\SQL2019\Reference\Microsoft.DataWarehouse.Interfaces.DLL + sharedDataWarehouseInterfaces + False + + + DLLs\SQL2019\Reference\FromASFolder\Microsoft.DataWarehouse.Interfaces.AS.DLL + False + asDataWarehouseInterfaces + False + True DLLs\SQL2019\Reference\Microsoft.DataWarehouse.RS.dll @@ -833,7 +851,7 @@ True DLLs\SQL2019\Reference\Microsoft.SqlServer.DlgGrid.dll - False + True True @@ -897,12 +915,6 @@ DLLs\SQL2019\Reference\Microsoft.DataWarehouse.DLL False - - False - DLLs\SQL2019\Reference\Microsoft.DataWarehouse.Interfaces.DLL - False - sharedDataWarehouseInterfaces - DLLs\SQL2019\Reference\Microsoft.DataWarehouse.VsIntegration.DLL False diff --git a/SSIS/SmartDiff.cs b/SSIS/SmartDiff.cs index 65b826a..3ac9b21 100644 --- a/SSIS/SmartDiff.cs +++ b/SSIS/SmartDiff.cs @@ -34,7 +34,7 @@ private void button1_Click(object sender, EventArgs e) try { bContextButton1 = true; - if (!string.IsNullOrEmpty(SourceSafeIniDirectory)) + if (!string.IsNullOrEmpty(SourceControlProvider)) this.browseContextMenuStrip1.Show(this, new Point(button1.Left, button1.Bottom)); else windowsFolderToolStripMenuItem_Click(null, null); @@ -50,7 +50,7 @@ private void button2_Click(object sender, EventArgs e) try { bContextButton1 = false; - if (!string.IsNullOrEmpty(SourceSafeIniDirectory)) + if (!string.IsNullOrEmpty(SourceControlProvider)) this.browseContextMenuStrip1.Show(this, new Point(button2.Left, button2.Bottom)); else windowsFolderToolStripMenuItem_Click(null, null); @@ -86,12 +86,12 @@ private void sourceSafeFolderToolStripMenuItem_Click(object sender, EventArgs e) versionForm.Controls.Add(combo); string sSourceSafePath = (bContextButton1 ? txtCompare.Text : txtTo.Text); - int iVersion = -1; + string sVersion = ""; if (sSourceSafePath.StartsWith("$/")) { if (sSourceSafePath.Contains(":")) { - iVersion = int.Parse(sSourceSafePath.Substring(sSourceSafePath.IndexOf(':') + 1)); + sVersion = sSourceSafePath.Substring(sSourceSafePath.IndexOf(':') + 1); sSourceSafePath = sSourceSafePath.Substring(0, sSourceSafePath.IndexOf(':')); } } @@ -110,7 +110,7 @@ private void sourceSafeFolderToolStripMenuItem_Click(object sender, EventArgs e) foreach (string option in SmartDiffPlugin.GetSourceControlVersions(SourceSafeIniDirectory, sSourceSafePath, SourceControlProvider)) { int i = combo.Items.Add(option); - if (option.StartsWith(iVersion + " ")) + if (option.StartsWith(sVersion + " ")) { combo.SelectedIndex = i; bFoundVersion = true; @@ -135,8 +135,8 @@ private void sourceSafeFolderToolStripMenuItem_Click(object sender, EventArgs e) string sVersionSuffix = ""; if (combo.SelectedIndex > 0) { - iVersion = int.Parse(combo.Items[combo.SelectedIndex].ToString().Substring(0, combo.Items[combo.SelectedIndex].ToString().IndexOf(' '))); - sVersionSuffix = ":" + iVersion; + sVersion = combo.Items[combo.SelectedIndex].ToString().Substring(0, combo.Items[combo.SelectedIndex].ToString().IndexOf(' ')); + sVersionSuffix = ":" + sVersion; } if (bContextButton1) diff --git a/SSIS/SmartDiffPlugin.cs b/SSIS/SmartDiffPlugin.cs index 81dc488..46e70cb 100644 --- a/SSIS/SmartDiffPlugin.cs +++ b/SSIS/SmartDiffPlugin.cs @@ -117,6 +117,7 @@ public override BIDSFeatureCategories FeatureCategory public static string PROVIDER_NAME_SOURCESAFE = "MSSCCI:Microsoft Visual SourceSafe"; public static string PROVIDER_NAME_TFS = "{4CA58AB2-18FA-4F8D-95D4-32DDF27D184C}"; + public static string PROVIDER_NAME_GIT = "Git"; //made up this provider name for integration with the previous flow public override void Exec() { @@ -138,6 +139,8 @@ public override void Exec() } } + + private void ExecInternal() { try @@ -202,6 +205,23 @@ private void ExecInternal() } } } + else + { + try + { + if (GitHelper.IsPathInGitRepository(projItem.get_FileNames(0))) + { + sSourceControlServerName = GitHelper.GetGitRepositoryPath(projItem.get_FileNames(0)); + sDefaultSourceSafePath = "$/" + GitHelper.GetRelativePath(projItem.get_FileNames(0)); + sProvider = PROVIDER_NAME_GIT; + } + } + catch (Exception ex) + { + package.Log.Exception("Could not check whether solution is a Git repository", ex); + } + + } } if (projItem.Document != null && !projItem.Document.Saved) @@ -213,7 +233,7 @@ private void ExecInternal() SSIS.SmartDiff form = new BIDSHelper.SSIS.SmartDiff(); form.SourceControlProvider = sProvider; form.DefaultWindowsPath = projItem.get_FileNames(0); - if (sProvider == PROVIDER_NAME_SOURCESAFE || sProvider == PROVIDER_NAME_TFS) + if (sProvider == PROVIDER_NAME_SOURCESAFE || sProvider == PROVIDER_NAME_TFS || sProvider == PROVIDER_NAME_GIT) { form.DefaultSourceSafePath = sDefaultSourceSafePath; form.SourceSafeIniDirectory = sSourceControlServerName; @@ -266,6 +286,8 @@ private void ExecInternal() GetSourceSafeFile(sSourceControlServerName, form.txtCompare.Text, sOldFile); else if (sProvider == PROVIDER_NAME_TFS) GetTFSFile(sSourceControlServerName, form.txtCompare.Text, sOldFile); + else if (sProvider == PROVIDER_NAME_GIT) + GetGitFile(sSourceControlServerName, form.txtCompare.Text, sOldFile); sOldFileName += " (server)"; } else @@ -280,6 +302,8 @@ private void ExecInternal() GetSourceSafeFile(sSourceControlServerName, form.txtTo.Text, sNewFile); else if (sProvider == PROVIDER_NAME_TFS) GetTFSFile(sSourceControlServerName, form.txtTo.Text, sNewFile); + else if (sProvider == PROVIDER_NAME_GIT) + GetGitFile(sSourceControlServerName, form.txtTo.Text, sNewFile); sNewFileName += " (server)"; } else @@ -328,10 +352,29 @@ public static string[] GetSourceControlVersions(string sIniDirectory, string sSo { return GetTFSVersions(sIniDirectory, sSourceSafePath); } + else if (sProvider == PROVIDER_NAME_GIT) + { + return GitHelper.GetHistoryOfFile(sIniDirectory, sSourceSafePath); + } throw new Exception("Invalid provider"); } + #region Git Access Methods + private static void GetGitFile(string sRepositoryPath, string sGitPath, string sLocalPath) + { + string sha = null; + if (sGitPath.Contains(":")) + { + sha = sGitPath.Substring(sGitPath.IndexOf(':') + 1); + sGitPath = sGitPath.Substring(0, sGitPath.IndexOf(':')); + } + + bool bResult = GitHelper.GetSpecificVersionOfFile(sRepositoryPath, sGitPath, sLocalPath, sha); + if (!bResult) throw new Exception("Could not get file from Git"); + } + #endregion + #region SourceSafe Access Methods //allows late-binding so that you don't have to have SourceSafe installed to compile BIDS Helper private static string VSS_ASSEMBLY_FULL_NAME = "Microsoft.VisualStudio.SourceSafe.Interop, Version=5.2.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"; @@ -732,16 +775,15 @@ private void ShowDiff(string oldFile, string newFile, bool bIgnoreCase, bool bIg ProjectItem projItem = (ProjectItem)hierItem.Object; string sTabName = projItem.Name + " (BIDS Helper Smart Diff)"; - System.IServiceProvider provider = null; - if (projItem.ContainingProject is System.IServiceProvider) - { - provider = (System.IServiceProvider)projItem.ContainingProject; - } - else - { - provider = TabularHelpers.GetTabularServiceProviderFromBimFile(hierItem, false); - } - //TODO: test .rdlc inside C# projects + System.IServiceProvider provider = package.ServiceProvider; //works in all project types even C# projects + //if (projItem.ContainingProject is System.IServiceProvider) + //{ + // provider = (System.IServiceProvider)projItem.ContainingProject; + //} + //else + //{ + // provider = TabularHelpers.GetTabularServiceProviderFromBimFile(hierItem, false); + //} Type t = vsAssembly.GetType("Microsoft.VisualStudio.Shell.Interop.IVsDifferenceService"); object oVsDifferenceService = provider.GetService(vsAssembly.GetType("Microsoft.VisualStudio.Shell.Interop.SVsDifferenceService")); @@ -892,6 +934,5 @@ public static string CustomDiffViewer } } } - - + } \ No newline at end of file diff --git a/core/GitHelper.cs b/core/GitHelper.cs new file mode 100644 index 0000000..75b4857 --- /dev/null +++ b/core/GitHelper.cs @@ -0,0 +1,273 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using LibGit2Sharp; + +namespace BIDSHelper.Core +{ + //from https://github.com/deadlydog/VS.DiffAllFiles/blob/master/VS.DiffAllFiles/GitHelper.cs with some additions by the BI Developer Extensions team + public static class GitHelper + { + // Had to manually sign the LibGit2Sharp.dll myself as per http://www.codeproject.com/Tips/341645/Referenced-assembly-does-not-have-a-strong-name + + ///

+ /// Returns true if the given path is in a Git repository; false if not. + /// + /// The full path to the file or directory. + /// + public static bool IsPathInGitRepository(string path) + { + return GetGitRepositoryPath(path) != null; + } + + /// + /// Gets the git repository path based on the path of the given file or directory inside of the repository. + /// Returns null if the given path is not inside of a Git repository. + /// + /// The path. + /// + public static string GetGitRepositoryPath(string path) + { + // If an invalid path was given, just return null. + if (!Directory.Exists(path) && !File.Exists(path)) + return null; + + // Return the path of the Git repository, if this path is actually within one. + // https://github.com/libgit2/libgit2sharp/issues/818#issuecomment-54760613 + return Repository.Discover(Path.GetFullPath(path)); + } + + public static Repository GetGitRepository(string repositoryPath) + { + try + { + return new Repository(repositoryPath); + } + catch (Exception ex) + { + throw new Exception(string.Format("There was a problem initializing a Git Repository instance from the path '{0}'. There may be a problem with one of your git .config files, such as invalid syntax or not properly escaping a file path.", repositoryPath), ex); + } + } + + /// + /// Copies the specific version of a file to the specified path. + /// Returns true if the version was found and the file copy performed; false if not. + /// + /// The git repository path. + /// The full file path of the file in the repository. + /// The file path to copy the specific version of the file to. + /// The commit containing the file version to obtain. If this is null, the most recent commit of the file will be used. If "Staged" the staged version of the file will used, and if there are no Staged changed for the file, then the most recent commit of the file will be used. + public static bool GetSpecificVersionOfFile(string gitRepositoryPath, string filePathInRepository, string filePathToCopyFileTo, string commitSha = null) + { + // Get the path to the Git repository from the file path. + var repositoryPath = GetGitRepositoryPath(gitRepositoryPath); + if (repositoryPath == null) + return false; + + if (filePathInRepository.StartsWith("/")) filePathInRepository = filePathInRepository.Substring(1); + if (filePathInRepository.StartsWith("$/")) filePathInRepository = filePathInRepository.Substring(2); + + // Remove the Git repository path from the file path to get the file's path relative to the Git repository. + var repoRootDirectory = repositoryPath.Replace(@".git\", string.Empty); + var relativeFilePath = filePathInRepository.Replace(repoRootDirectory, string.Empty); + + // An update to LibGit2Sharp removed support for backslashes, so file paths must use forward slashes: https://github.com/libgit2/libgit2sharp/issues/1075 + relativeFilePath = ReplaceBackslashesWithForwardSlashes(relativeFilePath); + + // Connect to the Git repository. + using (var repository = GetGitRepository(repositoryPath)) + { + Blob blob = null; + if (string.Equals(commitSha, "Staged", StringComparison.OrdinalIgnoreCase)) + { + // Get the Staged version of the file if it exists. If it doesn't, the latest (i.e. HEAD) version will be retrieved instead. + var blobIndex = repository.Index.FirstOrDefault(b => b.Path.Equals(relativeFilePath)); + if (blobIndex == null) return false; + blob = repository.Lookup(blobIndex.Id); + } + else + { + // Find the specific commit containing the version of the file to obtain. + var commit = (commitSha == null) ? GetPreviousCommitOfFile(repository, relativeFilePath) : repository.Lookup(commitSha); + if (commit == null) return false; + + // Get the file from the commit. + var treeEntry = commit[relativeFilePath]; + if (treeEntry == null) return false; + blob = treeEntry.Target as Blob; + } + if (blob == null) return false; + + // Write a copy of the file to the specified file path. + File.WriteAllText(filePathToCopyFileTo, blob.GetContentText()); + } + + return true; + } + + /// + /// Copies the previous version of a file to the specified path. + /// Returns true if the version was found and the file copy performed; false if not. + /// + /// The git repository path. + /// The full file path of the file in the repository. + /// The file path to copy the specific version of the file to. + /// The file as it existed previous to this commit will be obtained. If this is null, the most recent commit of the file will be used. + public static bool GetPreviousVersionOfFile(string gitRepositoryPath, string filePathInRepository, string previousVersionsFilePathInRepository, string filePathToCopyFileTo, string commitSha) + { + // Get the path to the Git repository from the file path. + var repositoryPath = GetGitRepositoryPath(gitRepositoryPath); + if (repositoryPath == null) + return false; + + // Remove the Git repository path from the file path to get the file's path relative to the Git repository. + var repoRootDirectory = repositoryPath.Replace(@".git\", string.Empty); + var relativeFilePath = filePathInRepository.Replace(repoRootDirectory, string.Empty); + var previousVersionsRelativeFilePath = previousVersionsFilePathInRepository.Replace(repoRootDirectory, string.Empty); + + // An update to LibGit2Sharp removed support for backslashes, so file paths must use forward slashes: https://github.com/libgit2/libgit2sharp/issues/1075 + relativeFilePath = ReplaceBackslashesWithForwardSlashes(relativeFilePath); + previousVersionsRelativeFilePath = ReplaceBackslashesWithForwardSlashes(previousVersionsRelativeFilePath); + + // Connect to the Git repository. + using (var repository = GetGitRepository(repositoryPath)) + { + // Find the specific commit containing the version of the file to obtain. + var commit = GetPreviousCommitOfFile(repository, relativeFilePath, commitSha); + if (commit == null) return false; + + // Get the file from the commit. + var treeEntry = commit[previousVersionsRelativeFilePath]; + if (treeEntry == null) return false; + + var blob = treeEntry.Target as Blob; + if (blob == null) return false; + + // Write a copy of the file to the specified file path. + File.WriteAllText(filePathToCopyFileTo, blob.GetContentText()); + } + + return true; + } + + /// + /// Gets the previous commit of the file. + /// + /// The repository. + /// The file path relative to repository. + /// The commit sha to start the search for the previous version from. If null, the latest commit of the file will be returned. + /// + private static Commit GetPreviousCommitOfFile(Repository repository, string filePathRelativeToRepository, string commitSha = null) + { + bool versionMatchesGivenVersion = false; + // Need to use Topological sort to avoid "Given key not present in dictionary" error: https://github.com/libgit2/libgit2sharp/issues/1520 + var fileHistory = repository.Commits.QueryBy(filePathRelativeToRepository, new FollowFilter() { SortBy = CommitSortStrategies.Topological }); + //new CommitFilter { SortBy = CommitSortStrategies.Topological }); + foreach (var version in fileHistory) + { + // If they want the latest commit or we have found the "previous" commit that they were after, return it. + if (string.IsNullOrWhiteSpace(commitSha) || versionMatchesGivenVersion) + return version.Commit; + + // If this commit version matches the version specified, we want to return the next commit in the list, as it will be the previous commit. + if (version.Commit.Sha.Equals(commitSha)) + versionMatchesGivenVersion = true; + } + + return null; + } + + public static string GetRelativePath(string fileFullPath) + { + if (!IsPathInGitRepository(fileFullPath)) return null; + string sRepositoryPath = GetGitRepositoryPath(fileFullPath); + sRepositoryPath = sRepositoryPath.Replace(@".git\", string.Empty); + string sRelativePath = fileFullPath.Replace(sRepositoryPath, string.Empty); + sRelativePath = ReplaceBackslashesWithForwardSlashes(sRelativePath); + if (sRelativePath.StartsWith("/")) sRelativePath = sRelativePath.Substring(1); + return sRelativePath; + } + + public static string[] GetHistoryOfFile(string fileFullPath) + { + if (!IsPathInGitRepository(fileFullPath)) return new string[] { }; + string sRelativePath = GetRelativePath(fileFullPath); + string sRepositoryPath = GetGitRepositoryPath(fileFullPath); + var repository = GetGitRepository(sRepositoryPath); + return GetHistoryOfFile(repository, sRelativePath); + } + + public static string[] GetHistoryOfFile(Repository repository, string filePathRelativeToRepository) + { + if (filePathRelativeToRepository.StartsWith("/")) filePathRelativeToRepository = filePathRelativeToRepository.Substring(1); + if (filePathRelativeToRepository.StartsWith("$/")) filePathRelativeToRepository = filePathRelativeToRepository.Substring(2); + List list = new List(); + // Need to use Topological sort to avoid "Given key not present in dictionary" error: https://github.com/libgit2/libgit2sharp/issues/1520 + var fileHistory = repository.Commits.QueryBy(filePathRelativeToRepository, new FollowFilter() { SortBy = CommitSortStrategies.Topological }); + //new CommitFilter { SortBy = CommitSortStrategies.Topological }); + foreach (var version in fileHistory) + { + list.Add(version.Commit.Id.Sha + " - " + version.Commit.Author.When.ToString() + " - " + version.Commit.Author.Name); + } + return list.ToArray(); + } + + public static string[] GetHistoryOfFile(string sRepositoryPath, string filePathRelativeToRepository) + { + List list = new List(); + var repository = GetGitRepository(sRepositoryPath); + return GetHistoryOfFile(repository, filePathRelativeToRepository); + } + + /// + /// Get if a file at the given path is Staged or not. + /// + /// The git repository path. + /// The file path in repository. + public static bool IsFileStaged(string gitRepositoryPath, string filePathInRepository) + { + // Get the path to the Git repository from the file path. + var repositoryPath = GetGitRepositoryPath(gitRepositoryPath); + if (repositoryPath == null) + return false; + + // Remove the Git repository path from the file path to get the file's path relative to the Git repository. + var repoRootDirectory = repositoryPath.Replace(@".git\", string.Empty); + var relativeFilePath = filePathInRepository.Replace(repoRootDirectory, string.Empty); + + // An update to LibGit2Sharp removed support for backslashes, so file paths must use forward slashes: https://github.com/libgit2/libgit2sharp/issues/1075 + relativeFilePath = ReplaceBackslashesWithForwardSlashes(relativeFilePath); + + // Connect to the Git repository. + using (var repository = GetGitRepository(repositoryPath)) + { + var stagedFile = repository.RetrieveStatus().Staged.FirstOrDefault(f => string.Equals(f.FilePath, relativeFilePath, StringComparison.OrdinalIgnoreCase)); + return stagedFile != null; + } + } + + /// + /// Gets the Git configuration entries for the given repository. + /// + /// The Git repository path, or the path to a file within the Git repository. + public static List> GetGitConfigurationEntries(string gitRepositoryPath) + { + // Get the path to the Git repository from the file path. + var repositoryPath = GetGitRepositoryPath(gitRepositoryPath); + if (repositoryPath == null) + return new List>(); + + // Connect to the Git repository. + using (var repository = GetGitRepository(repositoryPath)) + { + // Return the configuration information. + return repository.Config.ToList(); + } + } + + private static string ReplaceBackslashesWithForwardSlashes(string path) => path.Replace('\\', '/'); + } +}