Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
wiki:documentation:devguide:branches_and_tags [2018/08/23 17:07] marisa [Branches] |
— (current) | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== TerraLib Developer's Guide - Branches and Tags ====== | ||
- | ===== Branches ===== | ||
- | You can check all branches available (remotes and local) and see the current one (marked with "*"): | ||
- | <code bash> | ||
- | $ git branch -a | ||
- | </code> | ||
- | |||
- | The output of above command will be something like: | ||
- | <code bash> | ||
- | * master | ||
- | release-5.4 | ||
- | release-5.3 | ||
- | release-5.2 | ||
- | remotes/origin/HEAD -> origin/master | ||
- | remotes/origin/develop | ||
- | remotes/origin/master | ||
- | remotes/origin/release-5.0 | ||
- | remotes/origin/release-5.0.0-alpha | ||
- | remotes/origin/release-5.0.0-beta | ||
- | remotes/origin/release-5.1 | ||
- | remotes/origin/release-5.2 | ||
- | remotes/upstream/develop | ||
- | remotes/upstream/master | ||
- | remotes/upstream/release-5.0 | ||
- | remotes/upstream/release-5.0.0-alpha | ||
- | remotes/upstream/release-5.0.0-beta | ||
- | remotes/upstream/release-5.1 | ||
- | remotes/upstream/release-5.2 | ||
- | </code> | ||
- | |||
- | In the above output the **"* master"** means that the current branch is //**master**//. | ||
- | |||
- | We have the following branches: | ||
- | * **develop:** This is the branch where the development team is working to add new features to future versions of TerraLib and TerraView. It may be unstable although all updates((merge request in GIT)) are accepted only after building in all platform. We don't recommend to generate production versions of TerraLib/TerraView from this branch. Use it for testing new features and get involved with TerraLib/TerraView development. | ||
- | |||
- | * **release-5.4:** This is the branch for TerraLib generation //5.4.z//. | ||
- | |||
- | * **release-5.3:** This is the branch for TerraLib generation //5.3.z//. | ||
- | |||
- | * **release-5.2:** This is the branch for TerraLib generation //5.2.z//. | ||
- | |||
- | * **release-5.1:** This is the branch for TerraLib generation //5.1.z//. | ||
- | |||
- | * **release-5.0:** This is the branch for TerraLib generation //5.0.z//. | ||
- | |||
- | * **master:** This is the default branch((after //clone// command)). | ||
- | |||
- | |||
- | In order to switch to one of the branches listed above, use the checkout command and create a local branch to track the remote branch. The syntax of ''git checkout'' is: | ||
- | <code bash> | ||
- | $ git checkout -b <local_branch_name> <remote_branch_name without this part "remotes/"> | ||
- | </code> | ||
- | |||
- | In order to switch to branch //**develop**// you can use the following command: | ||
- | <code bash> | ||
- | $ git checkout -b develop origin/develop | ||
- | </code> | ||
- | |||
- | ===== Tags ===== | ||
- | |||
- | Also there are tags which usually are originated from a release branch. For instance, tag **//5.0.0//** and **//5.0.1//** is originated from branch **//release-5.0//**. | ||
- | |||
- | To check all tags available, use: | ||
- | <code bash> | ||
- | $ git tag -l (list all tag names) | ||
- | 5.0.0 | ||
- | 5.0.0-alpha | ||
- | 5.0.0-beta | ||
- | 5.0.1 | ||
- | </code> | ||
- | |||
- | If you want to checkout a specific version given by a tag and create a local branch to work on, you can use the following git command: | ||
- | <code bash> | ||
- | $ git checkout -b <local_branch_tag_name> <one_of_tag_name_listed> | ||
- | </code> | ||
- | |||
- | For instance, to checkout **5.0.1** you can enter the following command: | ||
- | <code bash> | ||
- | $ git checkout -b 5.0.1 5.0.1 | ||
- | </code> | ||
- | |||
- | |||
- | ---- | ||
- | |||
- | After selecting the right branch or tag, please, read the [[:wiki:documentation:devguide:src_instructions|Source Code Instructions]] section. |