Code Repository
-Mesa uses git +Mesa uses git as its source code management system.
+The master git repository is hosted on -freedesktop.org. +freedesktop.org.
@@ -26,15 +35,14 @@ You may access the repository either as an
You may also -browse the main Mesa git repository and the -Mesa demos and tests git repository. +browse the main Mesa git repository and the +Mesa demos and tests git repository.
- -Anonymous git Access
+Anonymous git Access
To get the Mesa sources anonymously (read-only):
@@ -57,25 +65,43 @@ To get the Mesa sources anonymously (read-only):
-
-
-Mesa developers need to first have an account on
-freedesktop.org.
-To get an account, please ask Brian or the other Mesa developers for
-permission.
-Then, if there are no objections, follow this
-
-procedure.
+If you wish to become a Mesa developer with git-write privilege, please
+follow this procedure:
Once your account is established:
-If you're
+If you're
using git on Windows you'll want to enable automatic CR/LF conversion in
your local copy of the repository:
At any given time, there may be several active branches in Mesa's
repository.
-Generally, the trunk contains the latest development (unstable)
+Generally, master contains the latest development (unstable)
code while a branch has the latest stable code.
Developer git Access
+Developer git Access
+
+
+git send-mail
to post your patches to mesa-dev.
+Reviewed-by
+statement.
+
-
-
git clone git+ssh://username@git.freedesktop.org/git/mesa/mesa
@@ -92,10 +118,10 @@ Once your account is established:
Windows Users
+Windows Users
-
-Development Branches
+Development Branches
Developer Git Tips
+Developer Git Tips
- Setting up to edit the master branch
@@ -144,12 +169,13 @@ 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. - Small changes to master
-If you are an experienced git user working on substancial modifications, +If you are an experienced git user working on substantial modifications, you are probably working on a separate branch and would rebase your branch prior to merging with master. @@ -162,6 +188,7 @@ If it has been awhile since you've done the initial clone, try
git pull
+to get the latest files before you start working.
@@ -170,6 +197,7 @@ 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.
@@ -185,12 +213,13 @@ To avoid this, git pull --rebase git push +
If you are familiar with CVS or similar system, this is similar to doing a
@@ -206,11 +235,10 @@ If you want the rebase action to be the default action, then git config --global branch.autosetuprebase=alwayscvs 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.-See Understanding Git Conceptually for a fairly clear explanation about all of this. +See Understanding Git Conceptually for a fairly clear explanation about all of this.