git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: jgit as a jira plugin

From
JLJ. Longman <longman@xiplink.com>
Date
Oct 29, 2008, 23:49 UTC
Message-ID
<D7D18CE8-BDBD-430A-BCB6-D1BEFD21C949@xiplink.com>
In-Reply-To
<20081029230816.GA31926@spearce.org>
On 29-Oct-08, at 7:08 PM, Shawn O. Pearce wrote:
Show 11 quoted lines
> "J. Longman" <longman@xiplink.com> wrote:
>> 2) I'd like to find out the jgit way to achieve the equivalent of  
>> 'svn
>> update'.  I understand that fetch can do this but being new to git, I
>> don't really understand quite what I need yet.  The goal is to have  
>> git
>> the latest commits from the origin before indexing.
> Use a Transport instance to execute a default fetch (no args) on say
> the "remote" origin.  That will download the objects to the local
> database, but it won't update a working directory.  But I'm not sure
> you would care about the working directory in the backend of Jira.
Basically I stole the pgm.Fetch code:
Transport tn = Transport.open(repository, "origin");
final FetchResult r;
List<RefSpec> toget = new ArrayList<RefSpec>();
try {
	r = tn.fetch(new TextProgressMonitor(), toget);
} finally {
	tn.close();
}

Can I assume that this enough to update the database? If so I think I'm doing what you're suggesting. After this (and not shown) is some logging code taken from Fetch, which results in the following:

 From /Users/longman/workspace2/work/../masterRepo/
     131dcf5..078d43f  master     -> origin/master

but there doesn't appear to be any specific mention of the incoming changes.

Show 5 quoted lines
>> Thanks for jgit - it took me a day or two to wrap my head around  
>> getting
>> the list of files changed in a commit but otherwise its great to have
>> something that can be integrated into jira.
> Yea, about that, we wanted to write more tutorials on the API...  ;-)

Well, the egit does provide some examples, just there's another API involved which can be confusing. The code in the jira git plugin the key classes are GitManagerImpl and RevisionIndexer, but the RevisionIndexer has some Lucene (text search engine) API mixed-in. Plus I'm still even learning about git much less the jgit api so I can't vouch for quality or correctness ;-). I could snip some code out and send it to you off-list for inclusion in the wiki maybe.

later, j

-- J. Longman longman@xiplink.com

The information transmitted is intended only for the person or entity to which it is addressed and may contain confidential and/or privileged material. If you have received this in error, please contact the sender and delete this communication and any copy immediately. Thank you.

Previous: Shawn O. PearceNext: Shawn O. Pearce
Message 3 of 5 in “jgit as a jira plugin”
  1. J. LongmanOct 29, 2008
  2. Shawn O. PearceOct 29, 2008
  3. J. LongmanOct 29, 2008
  4. Shawn O. PearceOct 29, 2008
  5. Shawn O. PearceOct 31, 2008

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.