Source Code Repository

From OpenSimulator

(Difference between revisions)
Jump to: navigation, search
(Source Code via Git)
 
(15 intermediate revisions by 4 users not shown)
Line 1: Line 1:
= Source Code via Git =
+
= Source Code via Git =
  
<font style="color: red; font-size: big">This page is for developers and testers only. If you are just using OpenSim, but not involved in developing it, we ask that you stick to [[Download | tagged releases]], preferably binary distributions.</font>
+
<font style="color: red; font-size: big">This page is for developers and testers only. If you are just using OpenSim, but not involved in developing it, we ask that you stick to [[Download|packaged releases]], preferably binary distributions.</font>
  
 
OpenSimulator uses Git as its source control tool.
 
OpenSimulator uses Git as its source control tool.
 
For more information on installing and using Git, please see [[Using Git]].  
 
For more information on installing and using Git, please see [[Using Git]].  
  
'''Never, ever, ever, never''' run master git in production environments; it is not suitable for that unless you are very familiar with the source code, and can hot fix any piece of it (that probably means you are an OpenSim developer). Feedback and testing on the unstable tree is very much appreciated, as that helps us make the next release better.  
+
Do not run master git in production environments; it is not suitable for that unless you are very familiar with the source code, and can hot fix any piece of it (that probably means you are an OpenSimulator developer). Feedback and testing on the unstable tree is very much appreciated, as that helps us make the next release better.  
  
 
* '''Latest git revision version (bleeding edge)'''
 
* '''Latest git revision version (bleeding edge)'''
Line 14: Line 14:
 
After creating the clone, change into the directory and:
 
After creating the clone, change into the directory and:
 
  git reset --hard ########
 
  git reset --hard ########
 +
 +
The current master requires .net 4.6+ (Windows) or mono5+ (Linux)
  
 
Where ######## is the unique hash of the version you are interested in.
 
Where ######## is the unique hash of the version you are interested in.
Line 20: Line 22:
 
  git clone ssh://<username>@opensimulator.org/var/git/opensim
 
  git clone ssh://<username>@opensimulator.org/var/git/opensim
  
Another option for obtaining the code is via subversion with our svn mirror.  This mirrors all git changes since the old 10k1 changeset in subversion.  It is synchronized every 15 minutes, so may be 15 minutes behind git master.
+
= Source Code via ViewGit Web Utility =
  
* '''Latest subversion revision version (bleeding edge)'''
+
You can also get OpenSimulator code via the ViewGit web utility at
svn co http://opensimulator.org/svn/opensim-track/trunk opensim
+
  
To do this with git:
+
http://opensimulator.org/viewgit/?a=shortlog&p=opensim
  
git-svn clone http://opensimulator.org/svn/opensim-track opensim -T trunk
+
You'll see a list of revisions as shown below.  
  
== Release Code via Git  ==
+
[[Image:Git Summary.png|center|640x112px]]  
Instead of using a source archive release, you can pull specific releases from our git source code repository. For more information on installing and using Git, please see [[Using Git]].
+
  
In each case you'll want to start with a clone:
+
Scroll down, and you will see not just the master head, but also the several tagged releases and working branches.
  
git clone git://opensimulator.org/git/opensim
+
The tarball or zip source code package for any particular revision can be downloaded by the ''tar/gz'' and ''zip'' links in the rightmost "Actions" column.
  
Then all other commands are run from inside the checked out directory.  For example
+
= Repository Structure =
  
*'''Command for retrieving 0.6.8'''
+
The master git branch contains OpenSimulator code in development.
  
  git checkout 0.6.8-release
+
Each main release will have a separate branch named <version>-post-fixes. For instance, 0.7.3 was released from the branch 0.7.3-post-fixes.  It's named 'post fixes' because it contains fixes that are ported from development code in a controlled manner.  It starts out as a new branch from the master code line when we start the new release process.
  
*'''Command for retrieving 0.6.8 with ongoing fixes'''
+
Each release has a tag with the format <version>-release.  So 0.7.3 is tagged as 0.7.3-release.
  
git checkout -b 0.6.8-post-fixes origin/0.6.8-post-fixes
+
Hence, to get the release code of 0.7.3 from the repository you would use the command.
  
*'''Command for updating an existing checked out 0.6.8 branch with subsequent changes'''
+
git checkout 0.7.3-release
  
  git pull
+
Minor point releases (e.g. 0.7.3.1) are also released from the post fixes branch from which their main release was taken. So 0.7.3.1 would be released from 0.7.3-post-fixes.  It would also be tagged as 0.7.3.1-release.
  
= Source Code via ViewGit Web Utility =
+
One can also retrieve the post fixes branch at any point with a command such as
  
You can also get OpenSimulator code via the ViewGit web utility at
+
git checkout -b 0.7.3-post-fixes origin/0.7.3-post-fixes
  
http://opensimulator.org/viewgit/?a=summary&p=opensim
+
Please only use this branch if you know exactly what you're doingThe post fixes branch should normally be stable but can still contain broken code between releases.
 
+
You'll see a list of revisions as shown below.   
+
 
+
[[Image:Git Summary.png|center|640x112px]]
+
 
+
Scroll down, and you will see not just the master head, but also the several tagged releases and working branches.
+
 
+
The tarball or zip source code package for any particular revision can be downloaded by the ''tar/gz'' and ''zip'' links in the rightmost "Actions" column.
+

Latest revision as of 06:01, 16 October 2019

[edit] Source Code via Git

This page is for developers and testers only. If you are just using OpenSim, but not involved in developing it, we ask that you stick to packaged releases, preferably binary distributions.

OpenSimulator uses Git as its source control tool. For more information on installing and using Git, please see Using Git.

Do not run master git in production environments; it is not suitable for that unless you are very familiar with the source code, and can hot fix any piece of it (that probably means you are an OpenSimulator developer). Feedback and testing on the unstable tree is very much appreciated, as that helps us make the next release better.

  • Latest git revision version (bleeding edge)
git clone git://opensimulator.org/git/opensim
  • To checkout a specific revision

After creating the clone, change into the directory and:

git reset --hard ########

The current master requires .net 4.6+ (Windows) or mono5+ (Linux)

Where ######## is the unique hash of the version you are interested in.

  • To clone the repository if you are a core developer
git clone ssh://<username>@opensimulator.org/var/git/opensim

[edit] Source Code via ViewGit Web Utility

You can also get OpenSimulator code via the ViewGit web utility at

http://opensimulator.org/viewgit/?a=shortlog&p=opensim

You'll see a list of revisions as shown below.

Git Summary.png

Scroll down, and you will see not just the master head, but also the several tagged releases and working branches.

The tarball or zip source code package for any particular revision can be downloaded by the tar/gz and zip links in the rightmost "Actions" column.

[edit] Repository Structure

The master git branch contains OpenSimulator code in development.

Each main release will have a separate branch named <version>-post-fixes. For instance, 0.7.3 was released from the branch 0.7.3-post-fixes. It's named 'post fixes' because it contains fixes that are ported from development code in a controlled manner. It starts out as a new branch from the master code line when we start the new release process.

Each release has a tag with the format <version>-release. So 0.7.3 is tagged as 0.7.3-release.

Hence, to get the release code of 0.7.3 from the repository you would use the command.

git checkout 0.7.3-release

Minor point releases (e.g. 0.7.3.1) are also released from the post fixes branch from which their main release was taken. So 0.7.3.1 would be released from 0.7.3-post-fixes. It would also be tagged as 0.7.3.1-release.

One can also retrieve the post fixes branch at any point with a command such as

git checkout -b 0.7.3-post-fixes origin/0.7.3-post-fixes

Please only use this branch if you know exactly what you're doing. The post fixes branch should normally be stable but can still contain broken code between releases.

Personal tools
General
About This Wiki