Opened 14 years ago

Closed 9 years ago

#720 closed task (fixed)

trac/git sandbox

Reported by: strk Owned by: sac@…
Priority: minor Milestone:
Component: SysAdmin Keywords:
Cc: getty, wildintellect

Description

It'd be nice to have a trac instance to play with for testing git integration.

Interesting points to deal with:

1: Check how to reference commits from tickets/wiki (ala r###) 2: Check what happens to old references (r###) -- should they be converted ? Is there an automatism for that ?

Change History (24)

comment:1 by wildintellect, 14 years ago

For fresh repositories, references would now be based on git Hashes.

For old repositories converted to git from svn something like the following would need to be run to maintain linkage by updating revision numbers to git Hashes. https://github.com/poseidix/TRAC-SVN-to-GIT-migration

I'm still looking for details on the syntax to reference a specific commit in a ticket without memorizing crazy hashes or copy/paste.

Suggested approach to this issue is to setup a new Trac instance with the latest Trac that supports multiple repos and create a test git repo or two for testing.

comment:2 by wildintellect, 13 years ago

Priority: normalminor

We'll put this into the TODO list for the upcoming install of Trac 0.12 - look for more planning details on the SAC list in the next few weeks.

comment:3 by aboudreault, 13 years ago

Cc: wildintellect added

If this still in your plan, We would like to use git for our repository of UbuntuGIS. It would be easier for us to collaborate with the git of debianGIS.

comment:4 by hamish, 13 years ago

It would be easier for us to collaborate with the git of debianGIS.

n.b. we (meaning mostly Frankie) have only migrated about half the projects in DebianGIS to git, the other half remain in Svn.

fwiw, Hamish

comment:5 by aboudreault, 13 years ago

Any update on this?

comment:6 by getty, 11 years ago

Cc: getty added; wildintellect removed

comment:7 by getty, 11 years ago

Cc: wildintellect added

comment:8 by strk, 9 years ago

Can this be done now that we're running 1.0.5 ?

comment:9 by martin, 9 years ago

This one is using GIT for the source repo:

https://trac.osgeo.org/martin/

I just didn't get to the point of installing a functional system for remote access control on the GIT repo - any "best practice" recommendation regarding this item ?

comment:10 by strk, 9 years ago

I have no experience with setting up a multi-user git repo, but wouldn't allowing ssh login to developers on the "git" machine give all the needed power ? Or would it be too much ?

comment:11 by strk, 9 years ago

This page talk about using a single "git" user (ala github) and ssh authorized keys to login: http://tumblr.intranation.com/post/766290565/how-set-up-your-own-private-git-server-linux

comment:12 by strk, 9 years ago

And this http://scie.nti.st/2007/11/14/hosting-git-repositories-the-easy-and-secure-way/ gives more tips to make it easier to create new repositories.

comment:13 by strk, 9 years ago

Once the "git" user is setup (further restrictions to it can be given via https://git-scm.com/docs/git-shell) you may want to look at gitolite for easy management of repositories. gitolite seems to be packaged by debian, contrary to gitosis (the one referenced by scie.nti.st)

comment:14 by strk, 9 years ago

Actually, I've just tried "gitolite3", and it does everything by itself, no need to manually create a "git" user (the packaged version installs a "gitolite3" user) - I guess it could later be changed (or aliased) to be "git"

comment:15 by strk, 9 years ago

nvh reported this tool which might be useful to convert trac references from SVN revisions to GIT commits, for specific projects that want to switch: https://github.com/seantis/git-svn-trac

comment:16 by strk, 9 years ago

Shall gitolite be choosen, there's a trac plugin for it: https://trac-hacks.org/wiki/GitolitePlugin

comment:17 by strk, 9 years ago

In alternative to gitolite, it might be simpler to just setup https access to git: https://www.kernel.org/pub/software/scm/git/docs/howto/setup-git-server-over-http.html

LDAP over HTTPS being already implemented for SVN, this could be the easiest path

comment:18 by martin, 9 years ago

What about this one - anonymous, but fast read-only:

git://git.osgeo.org/gittest/

Slower, but allowing authenticated commits (use your OSGeo LDAP password):

https://<user>@git.osgeo.org/git/gittest/

comment:19 by strk, 9 years ago

That's perfect. I guess next stop would be testing multiple-repositories, to make it easier for those coming from SVN to have a period of keeping both alive, maybe with ticket comments being able to refer to either of the two repo (so old ones can remain untouched and new one can point to the git repo, for example).

The other use case for multiple repository would be allowing for different project components to be in different repositories (think website, for instance).

comment:20 by strk, 9 years ago

I've filed the multiple-repository ticket on the gittest repo: https://trac.osgeo.org/gittest/ticket/3

comment:21 by strk, 9 years ago

Could I get admin access to the "gittest" repo, to continue the multi-repo research ? I'd like to setup a git repo under the "geos" trac instance in addition to the existing SVN repo.

comment:22 by strk, 9 years ago

I tried creating a repo for "php-geos" but right now I'm failing to push changes in it. The error I get is 'receive-pack': service not enabled on the server side

comment:23 by strk, 9 years ago

As a followup, php-geos works fine now (probably only took an apache restart). I don't know if this ticket still need to stay open, we can create git repos an attach them (even multiple ones) to trac instances.

comment:24 by strk, 9 years ago

Resolution: fixed
Status: newclosed

Closing as done. See #1650 for next sandbox ...

Note: See TracTickets for help on using tickets.