Using Github with Tudat Space

This page outlines some useful workflows when using Github to add

Gitflow Workflow

Initialize (if not already) Git-Flow

Initialize a Repository for git-flow

1
git flow init -d

(Omit -d if you want to select values other than the defaults.)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
$ git flow init
Initialized empty Git repository in ~/project/.git/
No branches exist yet. Base branches must be created now.
Branch name for production releases: [master]
Branch name for "next release" development: [develop]

How to name your supporting branch prefixes?
Feature branches? [feature/]
Release branches? [release/]
Hotfix branches? [hotfix/]
Support branches? [support/]
Version tag prefix? []

Start a New Feature

This creates a new branch based on develop and switches to it:

1
git flow feature start feature_branch

Publish a Feature

Push a feature branch to remote repository:

1
git flow feature publish feature_branch

Get a feature published by another user from remote repository:

1
git flow feature pull origin feature_branch

Finish a Feature

This merges the feature into develop, removes the feature branch, and switches to develop:

1
git flow feature finish feature_branch

Start a Release

Create release branch from develop:

1
git flow release start release_branch

Publish release branch:

1
git flow release publish release_branch

Create a local tracking branch for a remote release:

1
git flow release track release_branch

Finish a Release

Merge release branch into master, tag it, merge back into develop, and remove the release branch:

1
2
git flow release finish release_branch
git push --tags

Start a Hotfix

Create hotfix branch from master:

1
git flow hotfix start VERSIONNAME

Create hotfix branch from some other commit:

1
git flow hotfix start VERSIONNAME BASENAME

Finish a Hotfix

Merge hotfix back into develop and master, and tag:

1
git flow hotfix finish VERSIONNAME

Command-line

CLion Github Integration

Releases using Rever