Hi all,

I wanted to restart a thread about DSpace + Git development, as I'm 
imagining there are several of us who may be thinking "Yeah! DSpace is 
on GitHub. Now what?"

In particular, I'd like us to think about how we plan to develop DSpace 
releases in Git. There are several models I've stumbled across (all with 
pros/cons) and some are more structured than others.

Therefore, I wanted to make others aware of these various models, and 
perhaps start some discussion on them. There's also surely other Git 
development models out there that I've missed (hence, this a public 
message on dspace-devel, to let anyone take part in this discussion and 
make suggestions).

The Git development models I've been reading about so far include:

* The (seemingly) most popular "git-flow" model (highly structured, with 
specific 'types' of branches): 
http://nvie.com/posts/a-successful-git-branching-model/  (It even has 
its own 'git-flow' command line tools at: https://github.com/nvie/gitflow )

* The Fedora development model (less structured, but still some "rules" 
about using local branches heavily and avoiding development directly in 
"master"): 
https://wiki.duraspace.org/display/FCREPO/Git+Guidelines+and+Best+Practices

* Chris Wilper's well written guidelines: "How I use Git" (obviously 
very parallel to Fedora development model & almost a response to the 
"git-flow" model above): 
https://wiki.duraspace.org/display/~cwilper/How+I+Use+Git

(I've also listed these on the new "Development with Git" page: 
https://wiki.duraspace.org/display/DSPACE/Development+with+Git#DevelopmentwithGit-SomeusefulGitDevelopmentGuidelines
 
)

Admittedly, I'm still very much a novice on Git/GitHub development in 
larger teams. So, I'm not sold on any one model, and also feel there's 
great opportunity for us to create our own development model.

But, I do feel it is good for us to take a closer look at what others 
are doing and determine what we like and don't like. Otherwise, I worry 
each DSpace committer/developer may take a slightly different approach 
to DSpace development in GitHub. That has the potential to cause merge 
complexities or just general "messiness" in our Git repository's commit 
history (which also may become annoying to the developers forking our 
repositories).

Thoughts? Anyone else come across other Git development models that may 
be of interest to us all?

- Tim

-- 
Tim Donohue
Technical Lead for DSpace Project
DuraSpace.org

------------------------------------------------------------------------------
For Developers, A Lot Can Happen In A Second.
Boundary is the first to Know...and Tell You.
Monitor Your Applications in Ultra-Fine Resolution. Try it FREE!
http://p.sf.net/sfu/Boundary-d2dvs2
_______________________________________________
Dspace-devel mailing list
Dspace-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dspace-devel

Reply via email to