In our previous post we completed the installation of GIT, SourceTree, NAV and the AdvaniaGIT modules. We also created a GIT repository in Bitbucket. We selected to use BitBucket just because I already had a user configured there. I also have a user configured in Visual Studio Online where I store many of my NAV solutions in a private GIT repository. Public projects I put on GitHub. As I stated before we must make sure not to push any of the NAV standard code to public repositories.
Advania has internal GIT servers where we host our solutions.
The choice is yours. I don’t have any favorite GIT server solution.
In Advania we have created a branch structure. We create repositories for each NAV version. The master branch is always the W1 release. Each commit to the W1 branch contains a CU update. We always store all objects in every branch. In solution branches we also store deltas and reverse deltas.
We can access any of the CU’s code from the GIT repository and we can see every code change made from one CU to the next.
We branch out master to each localization. Each localization has the same rule as the master branch. Every CU is available and every code change is traceable.
All the GIT servers have a nice web interface. There we can easily see all commits, all code and all changes. This is a list of commits for the master branch.
This is a list of code changes in NAV 2017 CU8.
Let’s go ahead and create our first localization branch. In the following video I use the AdvaniaGIT functions to download and extract information from the latest CU. I don’t have a function that will download all updates for a given version.
Our next step will be creating a solution branch based of our localization. Stay tuned…