> For the complete documentation index, see [llms.txt](https://ykkim.gitbook.io/EC/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ykkim.gitbook.io/EC/numerical-programming/ta-tutorial/exercise-version-control-and-documentation.md).

# Exercise: Version Control and Documentation

## Exercise 1: Version Control

1. Create a **private** repository for numerical method
   * Example: NumericalProg
2. Create folders within the repository as instructed in the

* [Tutorial: Create Github Repos of NP lib](/EC/numerical-programming/ta-tutorial/tutorial-markdown.md#preparation)

3\. Maintain your library source files`myNM.h, myNM.cpp` and `myMatrix.h, myMatrix.cpp` in the ‘\include’ folder only

{% hint style="info" %}
There should be only 1 copy of your header/lib files in local drive. Include this folder path to include these files in other program projects.
{% endhint %}

### TA Session video

{% embed url="<https://www.youtube.com/watch?v=yFgIvPB_Q-c>" %}

## Exercise 2: Lib Documentation

1\. Create your API(numerical library) documentation for all the functions you have created in class. You should use `markdown` .

* refer to [Example: API documentation](/EC/other-programming/markdown/example-api-documentation.md#numerical-programming-api)

2\. Upload your documentation file in your github repository.

> example: /NumericalProg/docs/NM\_API\_Documentation.md

3\. You may need to add the hyperlink of API documentation in ' /docs/readme.md '

4\. You will use this documentation for as the reference material in the lecture and tests.
