X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=docs%2Frepository.html;h=954bd0d42e6bf0fd696f07883cf221860e9fd7c9;hb=9032d2a13ecd019206a48767d9205c0aafa7cca2;hp=d09fc1800a716d99d852a6a13ace7731718d833f;hpb=e3358dea660f5dec53a8be9e38d725f4fd829e14;p=mesa.git diff --git a/docs/repository.html b/docs/repository.html index d09fc1800a7..954bd0d42e6 100644 --- a/docs/repository.html +++ b/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 @@ -30,7 +27,9 @@ You may access the repository either as an

You may also browse the git repository. +target="_parent">browse the main Mesa git repository and the +Mesa demos and tests git repository.

@@ -51,6 +50,10 @@ To get the Mesa sources anonymously (read-only):
     git pull origin
     
+
  • If you also want the Mesa demos/tests repository: +
    +    git clone git://anongit.freedesktop.org/git/mesa/demos
    +    
    @@ -82,9 +85,34 @@ Once your account is established:
         git pull origin
         
    +
  • If you also want the Mesa demos/tests repository: +
    +    git clone git+ssh://username@git.freedesktop.org/git/mesa/demos
    +    
    +

    Windows Users

    + +

    +If you're +using git on Windows you'll want to enable automatic CR/LF conversion in +your local copy of the repository: +

    +
    +   git config --global core.autocrlf true
    +
    + +

    +This will cause git to convert all text files to CR+LF on checkout, +and to LF on commit. +

    +

    +Unix users don't need to set this option. +

    +
    + +

    Development Branches

    @@ -96,10 +124,91 @@ code while a branch has the latest stable code.

    -Questions about active Mesa development branches should be posted to -the mesa3d-dev mailing list. +The command git-branch will list all available branches.

    +

    +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. +

      +