Hi all,

I hope its ok to post a message on this topic. I read some threads about this from last December's digests after joining the fossil-dev group today.

For my needs, git cross-integration is a requirement. When I worked at Microsoft as JavaScript and Powershell Architect I tried to have some teams use fossil. While fossil had some clearly superior features and design elements, the lack of seamless out-of-the-box cross-collaboration mechanisms with other repository scm systems became a non-starter.

I made a long post about an hour or two ago on the general mailing list of things I had done for the last week to upgrade fossil to support various things for team collaboration use. One of my requirements was to enable seamless integration with git for those who I work with or who cannot even use fossil and need to cross-share repo changes between fossil and git.

My work on that is still an in progress thing. But here are a few things I found useful.

1) I grabbed the lastest fossil repo, turned on indexing of all the content, and saw the changes made for fast git interchange marks. 2) Modified my fossil build sources to transparently manage issues with trunk and master naming and renaming. Especially when creating new repos. 3) Set things up so that all the file name associations for fossil repos could be and were linked to SqliteBrowser app for our team developers to quickly validate any issues. Specifically making .fslckout the default on all platforms. 4) Worked with one of our devs to set up nodejs and grunt tasks to monitor changes and migrate them between a git-repo and a fossil-repo.

Step 4, while a work in progress, suggests that, like TCL integration or FUSE/DOKAN (on Windows) integration etc. One path to git support could be the presumption of git being installed on a developers machine, and then have fossil transparently exec/issue commands to git for any operations. This approach, using temp files (as fossil loves to do), has also worked to make it pretty easy to use git to pull down a repo, tell git to extract its contents, create a fossil repo, import the contents, and subsequently maintain syncing them. As well as doing the reverse of creating a git repo, exporting fossil change records, importing them into the new repo, and then as in the first case keeping them in sync.

We currently can quickly do item 4 aspects with manual assists, and I am thinking about whether to build those automated git-driver steps into fossil (via TH1) or just use our nodejs/grunt facilities.

p.s., I modified our fossil implementation to support server side TH1 wiki-scripts with new wikiedit interface. That was essential to enable supporting team members to author reports, custom pages, and make use of the rich sqlite features available.

David Simmons

_______________________________________________
fossil-dev mailing list
fossil-dev@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/fossil-dev

Reply via email to