[lkml]   [2005]   [Jun]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [doc][git] playing with git, and netdev/libata-dev trees
Dave Airlie wrote:
>>>1. when you want to publish your tree what do you do? just rsync it
>>Basically. I copy the attached script into each repo, customize the
>>script for the upload destination.
>>When I publish the tree, I just cd to the toplevel dir on my local
>>workstation, and run "./push"
>>>2. When you are taking things from your queue for Linus do you create
>>>another tree and merge your branches into it or what?
>>Not quite sure what you're asking, but I'll attempt to answer anyway :)
> Yes that's what I'm asking, mainly the pulling of multiple trees into
> one tree for giving to Linus, for Andrew I'm quite happy to have him
> pull multiple HEADs from the one tree assuming I don't have many
> interdependencies between trees...
> Say I want something like this one tree with
> drm-2.6 - HEAD <- linus tree
> - drm-via < a via driver
> - drm-initmap
> - drm-savage <- a savage driver that depends on
> the drm-initmap tree
> How would I construct such a beast, how does it work out from where to
> branch, can I branch a branch for something like drm-savage so I can
> say send Linus the initmap branch and then have -mm pulling the savage
> one...

You used to use BitKeeper, right?

Well, git works just fine for creating and maintaining separate repos,
where each repo is its own branch. Dependent branches are handled
simply by pulling new changes from the parent (drm-initmap) repo into
the child (drm-savage) repo.

If you just have a few branches, such as your example above, rather than
the 50+ branches I have, then I would recommend _ignoring_ the advice in
my git howto, and instead create a new branch by cloning:

cd /repos
mkdir drm-via
cp -a linux-2.6/.git drm-via
rm -rf drm-via/.git/objects
cp -al linux-2.6/.git/objects drm-via/.git

Once created by the above recipes, or similar, the directory will
function as a repo just like with BK. When you wish to update it from
upstream, update your local linux-2.6 repo and then

cd /repos/drm-via
git-pull-script /repos/linux-2.6/.git

or to pull new changes from initmap into savage:

cd /repos/drm-initmap
# { check in some changes }
cd /repos/drm-savage
git-pull-script /repos/drm-initmap/.git

Does all that make sense? It's really quite similar to BK, if you
ignore the "[jg-specific]" portions of the git howto I wrote.


To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2005-06-04 20:19    [W:0.035 / U:1.928 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site