Coder Social home page Coder Social logo

msdyn365bc.sandbox.code.history's Introduction

Business Central Code History Repository

This repository holds all versions of the Buisness Central Apps. The purpose is to quickly be able to compare every version to find changes.

There is one separate branch per country-major version.

Go the one of the w1 branches to find most of the code:
https://github.com/StefanMaron/MSDyn365BC.Sandbox.Code.History/branches/all?query=w1

Check out the country specific branches to view the localized base app. For example DE:
https://github.com/StefanMaron/MSDyn365BC.Sandbox.Code.History/branches/all?query=de

Schedule

The repository will automatically update itself from the artifacts once a day:

  • Regular/current branches will run at midnight UTC and pull the last 24 hours of artifacts
  • vNext/insider branches will run at 2 am UTC and pull the last 24 hours of artifacts

Differences

Main differences between the https://github.com/StefanMaron/MSDyn365BC.Code.History repo:

  • Builds on sandbox instead of OnPrem artifacts to include hotfixes
  • localization branches only include the localized code, so some of them are empty, some just have the base app (Check w1 branches for all the other code)
  • the commits are added by pipelines to reduce runtime
  • the pipelines will be scheduled to run daily once the initial load is done.
  • there will be branches to cover NextMajor/Minor as well (Look out for suffix vNext in the branches)
  • the main branch is just holding the scripts, switch branch to see the BC Code
  • Because of the crazy number of versions, I did limit this repo to start with 23.5
  • to keep the size of this repo at least in some boundaries, I decided to not include any translation files.

Partial Clone (Subset of Branches)

To reduce the size of the local clone you can use those commands to clone only the branches you need:

First, clone with those parameters and set it to whatever branch you need:

git clone -b w1-24 --single-branch https://github.com/StefanMaron/MSDyn365BC.Sandbox.Code.History

if you want to add additional branches you can do it like this

git remote set-branches --add origin de-24
git remote set-branches --add origin de-23
git fetch

You can also use wildcards for [remote-branch], e.g.

git remote set-branches --add origin us-*
git fetch

Removing tracking branches is a little more complicated. First you need to manually edit the .git/config file and remove the branches in the [remote "origin"] section

[core]
	repositoryformatversion = 0
	filemode = true
	bare = false
	logallrefupdates = true
[remote "origin"]
	url = https://github.com/StefanMaron/MSDyn365BC.Sandbox.Code.History
	fetch = +refs/heads/w1-23:refs/remotes/origin/w1-23
	fetch = +refs/heads/de-24:refs/remotes/origin/de-24
	fetch = +refs/heads/us-*:refs/remotes/origin/us-*
[branch "w1-23"]
	remote = origin
	merge = refs/heads/w1-23

once thats done you need to delete the local reference of the remote branches like this

git branch -d -r origin/us-23
git branch -d -r origin/us-24

if you had one of those branches checked out locally (a local copy of the branch) you want to delete those as well

git branch -D us-23
git branch -D us-24

and thats it, now git fetch should not pull the branches anymore

Partial Clone (Shallow Clone)

To further reduce the size of your local repository, you can also utilize the --depth parameter with the git clone command. This creates a shallow clone, fetching only the most recent commits up to the specified depth, thereby ignoring the entire history that you might not need.

For instance, to clone only the latest commit (depth of 1), you would use the following command:

git clone -b w1-24 --depth 1 https://github.com/StefanMaron/MSDyn365BC.Sandbox.Code.History

Tip

Using --depth implies --single-branch unless --no-single-branch is given to fetch the histories near the tips of all branches.

Later, you can deepen your clone by 3 commits (or any other number of commits) with git fetch --deepen 3 or convert it to a complete clone using git fetch --unshallow.

Disclaimer

All code is owned by Microsoft. You can not do any pull request on this repository.

msdyn365bc.sandbox.code.history's People

Contributors

pibcht avatar stefanmaron avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

msdyn365bc.sandbox.code.history's Issues

Renaming file paths

Hey @StefanMaron ,

Just want to bring to your attention, that there's some strange commits that just rename the files back and fort.

I noticed it while looking at the file history of FindRecordManagement.Codeunit.al

The last 6 commits it just renames files back and forth:

72d1d1a
rename from baseapp/source/Base Application/Utilities/FindRecordManagement.Codeunit.al
rename to BaseApp/Source/Base Application/Utilities/FindRecordManagement.Codeunit.al

08f96e3
rename from BaseApp/Source/Base Application/Utilities/FindRecordManagement.Codeunit.al
rename to baseapp/source/Base Application/Utilities/FindRecordManagement.Codeunit.al

image

Best Regards & Big thanks for maintaining this repo
Gintautas

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.