From 29b86f9852b2b7ecc31cdfee56679537e40bc6e2 Mon Sep 17 00:00:00 2001 From: marha Date: Mon, 12 Apr 2010 09:53:17 +0000 Subject: svn merge -r524:HEAD "^/branches/released" . --- mesalib/docs/repository.html | 84 +++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 79 insertions(+), 5 deletions(-) (limited to 'mesalib/docs/repository.html') diff --git a/mesalib/docs/repository.html b/mesalib/docs/repository.html index ed385288e..95d274a7a 100644 --- a/mesalib/docs/repository.html +++ b/mesalib/docs/repository.html @@ -1,6 +1,6 @@ -Cocd Repository +Code Repository @@ -9,11 +9,8 @@

Code Repository

-As of December 5, 2006, Mesa is using -git +Mesa uses git as its source code management system. -CVS was used previously. -The old CVS repository should no longer be used.

The master git repository is hosted on @@ -125,6 +122,83 @@ Questions about branch status/activity should be posted to the mesa3d-dev mailing list.

+

Developer Git Tips

+ +
    +
  1. Setting up to edit the master branch +

    +If you try to do a pull by just saying git pull +and git complains that you have not specified a +branch, try: +

    +    git config branch.master.remote origin
    +    git config branch.master.merge master
    +
    +Otherwise, you have to say git pull origin master +each time you do a pull. +

    +
  2. Small changes to master +

    +If you are an experienced git user working on substancial modifications, +you are probably +working on a separate branch and would rebase your branch prior to +merging with master. +But for small changes to the master branch itself, +you also need to use the rebase feature in order to avoid an +unnecessary and distracting branch in master. +

    +

    +If it has been awhile since you've done the initial clone, try +

    +    git pull
    +
    +to get the latest files before you start working. +

    +

    +Make your changes and use +

    +    git add <files to commit>
    +    git commit
    +
    +to get your changes ready to push back into the fd.o repository. +

    +

    +It is possible (and likely) that someone has changed master since +you did your last pull. Even if your changes do not conflict with +their changes, git will make a fast-forward +merge branch, branching from the point in time +where you did your last pull and merging it to a point after the other changes. +

    +

    +To avoid this, +

    +    git pull --rebase
    +    git push
    +
    +If you are familiar with CVS or similar system, this is similar to doing a + cvs update in order to update your source tree to +the current repository state, instead of the time you did the last update. +(CVS doesn't work like git in this respect, but this is easiest way +to explain it.) +
    +In any case, your repository now looks like you made your changes after +all the other changes. +

    +

    +If the rebase resulted in conflicts or changes that could affect +the proper operation of your changes, you'll need to investigate +those before doing the push. +

    +

    +If you want the rebase action to be the default action, then +

    +    git config branch.master.rebase true
    +    git config --global branch.autosetuprebase=always
    +
    +

    +See Understanding Git Conceptually for a fairly clear explanation about all of this. +

    +
-- cgit v1.2.3