Some project ideas

4 views
Skip to first unread message

Mark

unread,
Apr 6, 2011, 12:03:27 PM4/6/11
to Ticgit-ng
Before I dive in, I'll introduce myself. I'm a university student
graduating in May with a degree in CS. My main goal is to build up a
portfolio of open source work so I can keep learning and have a more
public resume. I've followed ticgit off and on since one of Scott's
original talks about git as more than a version control system. I'm
really interested in how developers work together (hence the interest
in bug trackers) and I think git is a really cool piece of technology.

So now that I've played around with ti some and added a few small
commits, I'm thinking about a larger project to tackle.

I like the idea for syncing, but I'm not confident in my Ruby skills
to actually design a plugin system, work with include/extend, etc to
set up the sync framework. Once I can see a little more of the
framework (what methods call what, how are things connected), I see
myself able to write a few sync plugins. But I think I need to wait
until things are a bit more developed there.

The next idea I thought about was switching to grit. But with all the
libgit2/rugged work (https://github.com/libgit2/rugged) I think I'd
like to swap out "git" for "rugged." Are there any reasons why grit
would be a preferable backend to rugged?

Let me know if there are any other project ideas you have floating
around.

--Mark

Jeff W

unread,
Apr 6, 2011, 2:48:47 PM4/6/11
to ticg...@googlegroups.com
On 11-04-06 12:03 PM, Mark wrote:
> Before I dive in, I'll introduce myself. I'm a university student
> graduating in May with a degree in CS. My main goal is to build up a
> portfolio of open source work so I can keep learning and have a more
> public resume. I've followed ticgit off and on since one of Scott's
> original talks about git as more than a version control system. I'm
> really interested in how developers work together (hence the interest
> in bug trackers) and I think git is a really cool piece of technology.
Nice. :) Sounds like much the same reasons I work on TicGit, except I'm
not yet a university student.

> So now that I've played around with ti some and added a few small
> commits, I'm thinking about a larger project to tackle.
>
> ...

>
> The next idea I thought about was switching to grit. But with all the
> libgit2/rugged work (https://github.com/libgit2/rugged) I think I'd
> like to swap out "git" for "rugged." Are there any reasons why grit
> would be a preferable backend to rugged?
This is the first I've heard of rugged. When I first began maintaining
TicGit, it was suggested that I should switch from the Git gem which is
no longer maintained, to the Grit gem which supersedes it. I gave it my
best shot, but had a *lot* of trouble finding the appropriate Grit calls
to actually swap them out. At the time I figured my Ruby skills were
just too sub-par to be able to figure it out, but since then a couple
other people have tried and they reached the same conclusion that I did,
so I now stand firm that the Grit gem is painfully lacking in documentation.
I'd be all for switching to the rugged gem. You may or may not yet
know, but we've monkey-patched the git gem to work with Ruby1.9 because
it seems it (git gem) is unmaintained upstream.
If you like, you could take a look at the switch_to_grit branch. When I
started trying to switch over to Grit, I created that branch and added a
bunch of commented-out lines of grit where ever I *could* find
equivalent git-gem functionality. You may find it useful to browse
through the changes in that branch. You could continue that branch or
start a new one if you like.

I do ask that branches follow this branching model though:
http://nvie.com/posts/a-successful-git-branching-model/
In my opinion, it helps visualize all of the various changes that are
made along the way and helps streamline the release of TicGit-ng gems.
Of course, that's *my* preference, you may prefer developing another way.


> Let me know if there are any other project ideas you have floating
> around.

Well, I try to keep the TODO list in the repository fairly up to date
with the things I'd like to see TicGit do in the future. You could take
a peek in there, I don't recall much of them off the top of my head,
I've been fairly single-minded about the syncing part for a while now.

Keep up the great work, looking forward to working with you :)
Jeff Welling

Reply all
Reply to author
Forward
0 new messages