mirror of
https://github.com/FlightControl-Master/MOOSE.git
synced 2025-08-15 10:47:21 +00:00
83 lines
3.4 KiB
Markdown
83 lines
3.4 KiB
Markdown
---
|
|
title: Basics
|
|
parent: Advanced
|
|
nav_order: 01
|
|
---
|
|
|
|
If you want to get deeper into Moose, you will encounter a few terms and
|
|
concepts that we will explain here. You will need them for the later pages.
|
|
|
|
# Git and GitHub
|
|
|
|
Moose has about 260.000 lines of code and the amount is increasing each week.
|
|
To maintain such a big code base a vcs (version control system) is needed.
|
|
Moose uses [Git], a distributed source code management system created 2005 by
|
|
Linus Torvalds for the development of the Linux kernel.
|
|
|
|
As developer platform [GitHub] was choosen as a central place for Moose
|
|
to create, store, and manage the code. [GitHub] use [Git] as version control
|
|
system and provides additional functionality like access control, bug tracking,
|
|
feature requests and much more.
|
|
|
|
As a Moose user you don't need to learn how to use [Git]. You can download the
|
|
files on [GitHub] with a browser. But using [Git] will ease up the steps to keep
|
|
the Moose version on your hard disk up to date.
|
|
|
|
You will need to interact with [GitHub]. At least to download the Moose files.
|
|
For non developers the page can be confusing. Take your time and read this
|
|
documentation. We are not able to explain every single detail on using [GitHub]
|
|
and [Git]. Especially because it is changing really quick and this documentaion
|
|
will not. So try to uns the help system of [GitHub] or find some videos on
|
|
[YouTube]. If you get stuck ask for help in the [Moose Discord].
|
|
|
|
Moose uses more then one repository on [GitHub] which doesn't exactly make it
|
|
any clearer. A list can be found on the [reposities] page.
|
|
|
|
# Branches: master & develop
|
|
|
|
As already explained in the [overview] two branches are used:
|
|
|
|
- [master]: Stable release branch.
|
|
- [develop]: Newest development with more OPS classes.
|
|
|
|
As a starter it is okay to begin your journey with the `master` branch.
|
|
If you are interested in some newer classes you need to use the `develop`
|
|
branch. The later one is also very stable, but it's missing more detailed
|
|
documentation and example missions.
|
|
|
|
You can switch between these branches with a drop down in the upper left corner
|
|
of th GitHub repository page. The list of branches is long. So it is a best
|
|
practise to save a bookmark in your browser with the links above.
|
|
|
|
# Build result vs. source files
|
|
|
|
Moose consists of more than 140 individual files with the file extension `.lua`.
|
|
They are places in a directory tree, which makes it more organized and its
|
|
semantic is pre-defined for IntelliSense to work.
|
|
|
|
On every change which is pushed to [GitHub] a build job will combine all of
|
|
these files to a the single file called `Moose.lua`. In a seconds step all
|
|
comments will be removed to decrease the file size and the result will be saved
|
|
as `Moose_.lua`. These both files are created for users of Moose to include in
|
|
your missions.
|
|
|
|
The individual `.lua` files are used by the Mosse developers and power users.
|
|
It is complicated to use them, but in combination with an IDE and a debugger it
|
|
is very usefull to analyse even complex problems or write new additions to the
|
|
Moose framework.
|
|
|
|
# Static loading vs. dynamic loading
|
|
|
|
# IDE vs. Notepad++
|
|
|
|
# What is a debugger (good for)
|
|
|
|
[Git]: https://en.wikipedia.org/wiki/Git
|
|
[GitHub]: https://github.com/
|
|
[YouTube]: https://www.youtube.com/
|
|
[Moose Discord]: https://discord.gg/gj68fm969S
|
|
[overview]: ../index.md
|
|
[reposities]: ../repositories.md
|
|
[master]: https://github.com/FlightControl-Master/MOOSE/tree/master
|
|
[develop]: https://github.com/FlightControl-Master/MOOSE/tree/develop
|