Browse Source

Add 'project/functions/README.md'

Pierre-Yves Barriat 7 years ago
parent
commit
3b53a42b6f
1 changed files with 86 additions and 0 deletions
  1. 86 0
      project/functions/README.md

+ 86 - 0
project/functions/README.md

@@ -0,0 +1,86 @@
+# Add new functions
+
+In this chapter we will create the functions to say Hello in the different languages from the table above.
+
+In the beginning you will add a new file in the git_tutorial project similar to `greetings.sh` with your function e.g. `greetings_catalan.sh`.
+
+Then you will modify `run.sh` to source and call your function.
+
+In a further chapter of this tutorial, we will merge all functions in the same file `greetings.sh` and we will see how git helps on the process of resolving conflicts.
+
+Try to have well documented functions in bash.
+
+An example of a header of a Bash function is provided below:
+
+```
+  # Functions to deal with greetings
+  #
+  # Written by My_name
+  #
+  # Earth and Life Institute / Université catholique de Louvain (ELIC-UCL)
+  # Created: May 4, 2017
+  # Adapted:
+ 
+  #######################################
+  # Say Hello in English
+  # Globals:
+  # Arguments: 
+  # None
+  # Returns:
+  # None
+  #######################################
+  function say_hello() {
+    echo "Hello world !"
+  }
+```
+
+#### Exercise 6 – Perform function commit
+
+Now you have time to make changes in git_tutorial project, i.e. create 'greetings_catalan.sh' file and develop your function. After that, if we check the status of our project again, Git tells us that it’s noticed a new file. We can tell Git to track a file using git add.
+
+```
+git add .
+```
+
+Git now knows that it’s supposed to keep track of 'greetings_catalan.sh', but it hasn’t recorded these changes as a commit yet. To get it to do that, we need to run one more command:
+
+```
+git commit -m "message explaining what you have done. Fixes issue #issue_number"
+```
+
+When we run `git commit`, Git takes everything we have told it to save by using `git add` and stores a copy permanently inside the special `.git` directory. This permanent copy is called a commit (or revision) and its short identifier is `f22b25e` (Your commit may have another identifier.)
+
+You can do as many commits as you wish while developing your function. If you reach a point at which any of the open issues gets solved, you can make your commit message end with `Fixes #issue_number` ([Exercise 4 – Open new issue in Git_Training project](http://www.climate.be:3000/TECLIM/Git_Training/_new/master/project/gogs_issues)).
+
+If you don't specify the `-m` parameter a text editor will open automatically to allow you to write the commit message.
+
+You can now ask Git to show the project history to check that the commit was successful by using:
+
+```
+git log
+```
+
+#### Exercise 7 – Perform run script commit
+
+You can now modify `run.sh` script to add the call to your newly created function (do not forget to source the file containing the function).
+
+Test it:
+
+```
+bash run.sh
+```
+
+When you are sure it works (it greets you in english and in your choosen language), perform a separate commit by following similar steps as in previous exercise:
+
+```
+git add run.sh
+git commit
+```
+
+#### Exercise 8 – Push git_tutorial project branch
+
+```
+git push origin <branch_name>
+```
+
+where `<branch_name>` is the name used in the previous step.