Getting Source Code

How to get source code on your machine using Branchout

Initialise

We can initialize directly from source control, currently the control project is called Practiv (as a customer we will provide you access to this repo), this contains the list of projects and tool configurations that are consistent for all the developers.

To pull the configuration just run this command.

branchout init git@<repo_provided_as_customer>
Ø branchout init git@<repo_provided_as_customer>
Clonando en 'Practiv'...
remote: Enumerating objects: 34, done.
remote: Total 34 (delta 0), reused 0 (delta 0), pack-reused 34
Recibiendo objetos: 100% (34/34), listo.
Resolviendo deltas: 100% (13/13), listo.

Now that we have the Practiv project we can examine the respositories. Firstly a status will show that nothing has been cloned yet.

cd ~/projects/Practiv
ls
branchout status forge
¥ ls
Branchoutfile  Branchoutprojects  README.md

¥ branchout status
forge/forge-build                                                   Not cloned
forge/forge-live                                                    Not cloned
forge/forge-forge-[delivery]                                        Not cloned
forge/forge-cta                                                     Not cloned
forge/forge-system                                                  Not cloned

Lets pull the forge repositories, the forge repositories are the ones that represent environments

Try just the forge-[delivery] repository first

branchout pull forge-forge-[delivery]
¥ branchout pull forge-forge-[delivery]
Cloning forge
Pulled  forge                                                        master
Cloning forge/forge-forge-[delivery]
Pulled  forge/forge-forge-[delivery]                                 master

Now get all the forge repositories, the name to pull is a prefix match

branchout pull forge
¥ branchout pull forge
Pulled  forge                                                       master
Cloning forge/forge-forge-[delivery]
Cloning forge/forge-build
Cloning forge/forge-cta
Cloning forge/forge-live
Pulled  forge/forge-forge-[delivery]                                master
Pulled  forge/forge-cta                                             master
Pulled  forge/forge-build                                           master
Pulled  forge/forge-live                                            master
Pulled  forge/forge-system                                          master
Pulled  forge/forge-uat                                             master

We now have all the forge repositories

This shows the forge group folder

¥ ls | sort
Branchoutfile
Branchoutprojects
README.md
forge

This shows the repositories in forge

¥ ls forge | sort
README.md
forge-build
forge-cta
forge-forge-[delivery]
forge-live
forge-system
forge-uat

To get all the repositories you can run

branchout pull

Its possible to define a special repository to hold docs etc for a group, when these are not defined this warning will happen the first time. This just tells you that a real repository was not found and a directory is being created to hold the working copies.

Here is a list of all the group folders

¥ ls | sort
anvil
Branchoutfile
Branchoutprojects
elma
oacc
README.md
forge
wilee