Commit 298c2b8f authored by Jochen Schulz's avatar Jochen Schulz
Browse files

moved software managemet to scientific practical

parent f7859b4a
......@@ -32,7 +32,7 @@ A lecture to teach Haskell in a 2 weeks block lab course.
* [26 continous optimization](http://nbviewer.jupyter.org/urls/gitlab.gwdg.de/jschulz1/haskell_labcourse/raw/master/lecture/26 continous optimization.ipynb)
* [27 inverse](http://nbviewer.jupyter.org/urls/gitlab.gwdg.de/jschulz1/haskell_labcourse/raw/master/lecture/27 inverse.ipynb)
* [28 minsurf](http://nbviewer.jupyter.org/urls/gitlab.gwdg.de/jschulz1/haskell_labcourse/raw/master/lecture/28 minsurf.ipynb)
* [general software management](http://nbviewer.jupyter.org/urls/gitlab.gwdg.de/jschulz1/haskell_labcourse/raw/master/lecture/general software management.ipynb)
* [Untitled](http://nbviewer.jupyter.org/urls/gitlab.gwdg.de/jschulz1/haskell_labcourse/raw/master/lecture/Untitled.ipynb)
* [shortest path](http://nbviewer.jupyter.org/urls/gitlab.gwdg.de/jschulz1/haskell_labcourse/raw/master/lecture/shortest path.ipynb)
## viewing of the notebooks
......
%% Cell type:markdown id: tags:
# general software management
the management of software has many parts. We pick some of them here:
* design
* version control
* documentation
* packaging
%% Cell type:markdown id: tags:
## version control
version control mainly tracks the changes in code over time, by whom and why.
This is the basic of an efficient team workflow as well as all other aspects of software managemenent
### git
We choose git here.
#### design of git
* a repository which holds all the version information
* a local checkout which holds all the files of one version
* possible several connections to *remotes* which are other repositories of the same project.
you can work locally, creating new versions (via *commits*) and if you want to share it with others *push* it to an remote.
#### basic workflow
Get initial clone of an repository
```
git clone <url>
```
update local repo
```
git pull
```
update remote repo (usually one central repository)
```
git push
```
add file for an commit (be it untracked or modified)
```
git add <file>
```
commit (create a new version)
```
git commit
```
### getting lecture code
```
git clone https://gitlab.gwdg.de/jschulz1/haskell_labcourse.git
cd haskell_labcourse
ihaskell-notebook
```
to update do
```
git pull
```
%% Cell type:code id: tags:
``` haskell
```
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment