Click here to Skip to main content
Licence CPOL
First Posted 30 Mar 2009
Views 26,907
Downloads 355
Bookmarked 17 times

Atlassian Jira - TortoiseSVN Plugin for Issue Tracking and Easy Linking of Subversion Project with Jira Issue

By Ahmet Göktaş | 30 Mar 2009
Atlassian Jira - TortoiseSVN Plugin for Issue Tracking and Easy Linking of Subversion Project with Jira Issue

1

2
1 vote, 25.0%
3
1 vote, 25.0%
4
2 votes, 50.0%
5
4.50/5 - 4 votes
μ 4.50, σa 1.68 [?]

Introduction

This application is a plugin for TortoiseSVN. It integrates into your TortoiseSVN application.

If you use Atlassian Jira for issue tracking and TortoiseSVN for subversion repository management, you may want to manage the issue when working towards copy committing. This plugin helps you at this time.

Using the Code

JiraBrowserPlg DLL is the main plugin DLL. This is the source code:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Interop.BugTraqProvider;
using System.Runtime.InteropServices;
using System.Windows.Forms;
using JiraTortoBrowser;

namespace JiraTorto
{
    [ComVisible(true)]
    [ClassInterface(ClassInterfaceType.None)]
    [Guid("7C054A52-725F-4053-BFCF-44988D9BA5DE")]

    public class JiraTortoPlugin : IBugTraqProvider2, IBugTraqProvider
    {
        
        #region IBugTraqProvider2 Members

        public string GetCommitMessage(IntPtr hParentWnd, string parameters, 
		string commonRoot, string[] pathList, string originalMessage)
        {
            return GetCommitMessage2(hParentWnd, parameters, "", commonRoot, 
						pathList, originalMessage);
        }

        public string GetCommitMessage2(IntPtr hParentWnd, string parameters, 
	string commonURL, string commonRoot, string[] pathList, string originalMessage)
        {
            try
            {
                MainWindow window = new MainWindow();
                window.Activate();
                if (window.ShowDialog() == DialogResult.OK)
                {                                        
                    return (originalMessage + "\r\n" + window.SelectedIssue());
                }
                return originalMessage;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
                throw;
            }            
        }

        public string GetLinkText(IntPtr hParentWnd, string parameters)
        {
            return "Show Issues...";
        }

        public bool HasOptions()
        {
            return true;
        }

        public string OnCommitFinished(IntPtr hParentWnd, string commonRoot, 
			string[] pathList, string logMessage, int revision)
        {            
            MainWindow form = new MainWindow();
            form.Show();
            
            return "an error happened while closing the issue";
        }

        public string ShowOptionsDialog(IntPtr hParentWnd, string parameters)
        {
            frmAccountSettings settings = new frmAccountSettings();
            if (settings.ShowDialog() != DialogResult.OK)
                return "";

            string options = settings.Text;
            return options;
        }

        public bool ValidateParameters(IntPtr hParentWnd, string parameters)
        {
            return true;
        }

        #endregion
    }
}

History

  • 30th March, 2009: Initial post

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

About the Author

Ahmet Göktaş

Software Developer
Istanbul Bilgi University
Turkey Turkey

Member
- Software developer from İstanbul/Turkey
- Programmed with C#.NET, ASP.NET, ASP, PHP, T-SQL
- SQL Server Administration
- Experiencing about NHibernate

Sign Up to vote   Poor Excellent
Add a reason or comment to your vote: x
Votes of 3 or less require a comment

Comments and Discussions

 
You must Sign In to use this message board. (secure sign-in)
 
Search this forum  
 FAQ
    Noise  Layout  Per page   
  Refresh
GeneralAn alternative implementation on csharptest.net Pinmemberdmreference dot com8:42 24 Aug '09  
GeneralSome bugfixes [modified] PinmemberLinne7411:07 24 Jun '09  
GeneralRe: Some bugfixes PinmemberAhmet Göktaş8:35 30 Jun '09  
GeneralRe: Some bugfixes PinmemberVlad Volkov5:09 24 Nov '09  
GeneralRe: Some bugfixes PinmemberAhmet Göktaş7:16 24 Nov '09  
GeneralRe: Some bugfixes PinmemberAhmet Göktaş7:20 24 Nov '09  
GeneralCombining multiple BugTraqProvider into a single project PinmemberLinne Jan11:14 16 Jun '09  
GeneralTSVN Version Pinmemberledz12:06 27 Apr '09  
GeneralRe: TSVN Version PinmemberAhmet Göktas13:04 27 Apr '09  
GeneralJira with NTLM authentication PinmemberSnakefoot0:08 7 Apr '09  
GeneralRe: Jira with NTLM authentication PinmemberAhmet Göktas0:22 7 Apr '09  
GeneralRe: Jira with NTLM authentication PinmemberSnakefoot0:23 7 Apr '09  

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

Permalink | Advertise | Privacy | Mobile
Web03 | 2.5.120209.1 | Last Updated 30 Mar 2009
Article Copyright 2009 by Ahmet Göktaş
Everything else Copyright © CodeProject, 1999-2012
Terms of Use
Layout: fixed | fluid