On 4 Sep 2011, h...@pansensack.de wrote: > On Saturday 03 September 2011, Bill Pringlemeir wrote: >> I have been grappling with git for some time. People keep saying >> that it has different 'models', but I could never find any sort of >> discussion of what these models are [a high level overview].
> What these people mean by "models" is the different organizational ways > in which new code changes propagate from the original developer to the > other developers and eventually into the product. These models are > usually named after structures from graph theory. Well, that is one thing. Here is another, http://www.kernel.org/pub/software/scm/git/docs/gitworkflows.html Also there is a model where you don't 'push' or 'pull'. http://www.kernel.org/pub/software/scm/git/docs/git-format-patch.html http://www.kernel.org/pub/software/scm/git/docs/git-send-email.html >> Anyways, there are many new/foreign commands with git, but I think >> the 'rebase' concept is an important new tool. > Rebasing means automatically rewriting the latest part of your commit > history so that it is based on a different parent commit. This is > necessary to avoid conflicts when you pull from an integrator who changed > your commits, and it is also a nice tool to make your history look > cleaner before you share it. But is has not that much to do with > Raphael's particular problem. Are you sure? If he is working on DOVE changes (say a branch), wouldn't he want to rebase with the 'master' so he could see how the DOVE changes are integrating with whatever was pushed to the 'master'? I think this is something that will change his 'sandbox' concept. Also, his 'DOVE' branch wouldn't have to be pushed/pulled to the origin (master remote server). He can merge the DOVE branch to the master branch when he is ready to integrate and push/pull to the origin server. Ie, with git, you can selectively push/pull individual branches to the origin repo. Here is what I was proposing, # Create sandbox git fetch ... git branch dove # Work in sandbox ... do work. git commit . # Update from main branch. git branch master # switch back to master. git pull origin git branch dove git rebase master # dove branch updated with master changes # Do more work ... more work. git commit . # dove feature complete, ready for wide release. # Move branch to wide release. git branch master git merge dove git push # or whatever the update stuff is. I am not a git guru, so maybe something is wrong. For what it is worth, Bill Pringlemeir. ------------------------------------------------------------------------------ Special Offer -- Download ArcSight Logger for FREE! Finally, a world-class log management solution at an even better price-free! And you'll get a free "Love Thy Logs" t-shirt when you download Logger. Secure your free ArcSight Logger TODAY! http://p.sf.net/sfu/arcsisghtdev2dev _______________________________________________ gtk-gnutella-devel mailing list gtk-gnutella-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gtk-gnutella-devel