Question

i followed a lot of steps and finally am stuck here. am a rookie. pls help me understand the following lines :: (frm the page http://www.mongodb.org/display/DOCS/Building+for+Linux)

pick a stable version unless doing true dev

git tag -l

Switch to a stable branch (unless doing development) --

an even second number indicates "stable". (Although with

stharding you will want the latest if the latest is less

than 1.6.0.) For example:

git checkout r1.4.1

[COULD NOT UNDERSTAND WHAT IS BEING SAID ABOVE]

after this there are only two steps in the "build" process those are 'scons all' and 'scons --prefix=/opt/mongo install'

Was it helpful?

Solution

Branching and tagging

For MongoDB they have decided to number differently which "branch " is stable and which "branch" is in development.Actually, they are using the master branch as there development branch tagging along the way when they think they should bump the development branch. They create a proper branch for each stable version.

Why: the development is ongoing which mean they never have to come back to a previous version of a development branch later in time. Every time a development branch is deemed worthy to become stable the code between the stable and development branch are the same.

The development is carried on but sometimes you have to fix a bug in the stable branch. In that case you can use the branch you have created to fix that particular issue without impacting your development branch (if there is no need for it) To checkout the remote branch

git branch -r

The other mecanism used by 10gen is the tagging system offered by git. Each branch (development or stable) need some milestones. On the development branch (master) each time a set of features is merge in the code, they tag the development branch with a new version. That help to identify what you are talking about to give some milestone on what has been accomplished.

For the stables branches it's the same approach but it's more about fixing bugs. To check all the tags:

git tag

Building on Linux

I assume you have followed so warm up and installed all the required libraries.

So now you have to decide which branch you want to use. First you have to clone the repository

git clone git://github.com/mongodb/mongo.git

Then you have to decide which branch you want to use because the default one is the development (master). You can check that by going in the folder mongo

cd mongo
git branch -a

There is a star next to the active branch.

If you want to use the latest code you are all set and you can start the building process. if you want to use a stable branch you have to get the right version

git checkout r1.6.5

you are now using the code tagged with version 1.6.5

now all you have to do it to launch the built process.

scons all

and install the software

scons --prefix=/opt/mongo install

OTHER TIPS

You shouldn't need to build from scratch. There are prebuilt debian packages on the MongoDB website.

Check out those instructions at http://www.mongodb.org/display/DOCS/Ubuntu+and+Debian+packages and you should have a much easier time.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top