From 6ff040e83d2e9dcde1cec27cd5c8e24d50feb166 Mon Sep 17 00:00:00 2001
From: Adrian Stoica <stoica@ntnu.no>
Date: Mon, 18 Sep 2023 13:21:21 +0200
Subject: [PATCH] edit: update slides for lecture 8

---
 lectures/revealjs/08-eclipse-che.adoc       | 105 ++++++++++++++++++++
 lectures/revealjs/08-git-special-files.adoc |  96 ++++++++++++++++++
 2 files changed, 201 insertions(+)
 create mode 100644 lectures/revealjs/08-eclipse-che.adoc
 create mode 100644 lectures/revealjs/08-git-special-files.adoc

diff --git a/lectures/revealjs/08-eclipse-che.adoc b/lectures/revealjs/08-eclipse-che.adoc
new file mode 100644
index 0000000..cec0936
--- /dev/null
+++ b/lectures/revealjs/08-eclipse-che.adoc
@@ -0,0 +1,105 @@
+= CDEs / Eclipse Che 
+:customcss: slides.css
+:icons: font
+:includedir: includes/
+:LECTURE_TOPIC: CDEs / Eclipse Che 
+:LECTURE_NO: 8th Lecture
+
+include::{includedir}header.adoc[]
+
+[.smaller-80][.center-paragraph]
+IT1901 Fall 2023 - {LECTURE_NO}
+
+[background-color = "#124990"]
+[color = "#fff6d5"]
+== Overview
+[.smaller-80]
+- Administrative issues
+- CDEs
+- Eclipse Che
+- Git - Special Files
+- Summary
+
+
+== Group work
+
+- 1st group assignment - deadline - 21.09.2023 18:00
+- Eclipse Che requirement is replaced
+- Need to have documentation that indicates the java and maven versions needed
+
+
+[background-color = "#124990"]
+[color = "#fff6d5"]
+== Cloud Cevelopment Environments (CDEs)
+
+== CDEs
+
+- aim is to have a browser as sole requirement
+- click a link to open the project
+- automated git setup 
+- the entire development environment is preconfigured
+- everyone runs the same environment (works on any machine)
+- improved collaboration and onboarding
+
+== CDEs (2)
+
+- Gitpod 
+- Codespaces
+- Eclipse Che
+- etc
+- the main idea is having a preconfigured container running on a cloud infrastructure 
+
+== CDEs (3)
+
+- we tradeoff control
+- we are dependent of network access
+- save time (Gitpod claims it saves 5h/week/dev)
+- less developers work on their environment setting skills
+- limited somewhat by the browser view
+
+
+== Eclipse Che
+
+- open source - Eclipse Foundation
+- available online hosted by RedHat
+- can be self hosted on Kubernetes
+- we will use it in IT1901
+    ** test in deliverable 2
+    ** obligatory for deliverable 3
+
+
+== Eclipse Che IT1901
+
+[.smaller-80]
+- https://che.stud.ntnu.no
+- current limitations 
+ ** container UI needs to be started manually
+ ** UI might lock (screensaver) - we need to unlock using terminal commands
+ ** every user is limited to 1 running workspace
+ ** stoping a workspace loses changes  (you should always push your changes before closing)
+
+== Eclipse Che IT1901
+
+[.smaller-80]
+- setting up Gitlab access
+ ** in Che -> User Preferences -> Personal Access Tokens
+ ** Add token
+ ** if you do not have a token  - generate one in Gitlab
+- opening a project in Che
+ ** using a link - https://che.stud.ntnu.no/#https://gitlab.stud.idi.ntnu.no/project_path?new
+ ** using the dashboard in Che
+
+== Eclipse Che configuration
+
+- devfile.yaml or .devfile.yaml in the root of the repo
+- https://eclipse.dev/che/docs/stable/end-user-guide/devfile-introduction/
+
+
+[background-color = "#124990"]
+[color = "#fff6d5"]
+== Demo
+
+
+
+
+include::{includedir}footer.adoc[]
\ No newline at end of file
diff --git a/lectures/revealjs/08-git-special-files.adoc b/lectures/revealjs/08-git-special-files.adoc
new file mode 100644
index 0000000..cf48a06
--- /dev/null
+++ b/lectures/revealjs/08-git-special-files.adoc
@@ -0,0 +1,96 @@
+= Git Special Files
+:customcss: slides.css
+:icons: font
+:includedir: includes/
+:LECTURE_TOPIC: Git Special Files 
+:LECTURE_NO: 8th Lecture
+
+include::{includedir}header.adoc[]
+
+[.smaller-80][.center-paragraph]
+IT1901 Fall 2023 - {LECTURE_NO}
+
+
+[background-color = "#124990"]
+[color = "#fff6d5"]
+== Git Special Files
+
+== Overview
+
+- .gitignore
+- .mailmap 
+- .gitkeep 
+- .gitattributes 
+
+== .gitignore
+
+- configure files to ignore 
+- https://git-scm.com/docs/gitignore
+- https://gitignore.io
+
+== .mailmap
+
+- map author / committer names and emails
+- https://git-scm.com/docs/gitmailmap
+
+
+== .mailmap
+
+``` 
+# Hallvard
+Hallvard Trætteberg <hal@ntnu.no> Hallvard Trætteberg <hal@ntnu.no>       
+Hallvard Trætteberg <hal@ntnu.no> Hallvard Traetteberg <hal@ntnu.no>
+Hallvard Trætteberg <hal@ntnu.no> hal <hal@ntnu.no>
+# Adrian
+George Adrian Stoica <stoica@ntnu.no> George Adrian Stoica <stoica@ntnu.no>
+George Adrian Stoica <stoica@ntnu.no> Adrian Stoica <stoica@ntnu.no>
+
+```
+
+== .gitkeep
+
+- keep in the repository empty folders
+- git keeps track of folders that have files 
+- not really a git special file 
+- widely used convention
+- typically we remove the file when we add other files to the folder 
+
+== .gitattributes
+
+- https://www.git-scm.com/docs/gitattributes
+- control git attributes per path
+- for example configure how EOL is handled
+
+== .gitattributes
+
+```
+# Set the default behavior, in case people don't have core.autocrlf set.
+* text=auto
+
+# Set linux endings for . files
+.bashrc text eol=lf
+.xinitrc text eol=lf
+
+# Explicitly declare text files you want to always be normalized and converted
+# to native line endings on checkout.
+*.c text
+*.h text
+
+# Declare files that will always have CRLF line endings on checkout.
+*.sln text eol=crlf
+
+# Denote all files that are truly binary and should not be modified.
+*.png binary
+*.jpg binary
+
+```
+[smaller-40]
+https://docs.github.com/en/get-started/getting-started-with-git/configuring-git-to-handle-line-endings
+
+
+[background-color = "#124990"]
+[color = "#fff6d5"]
+== Summary
+
+
+include::{includedir}footer.adoc[]
\ No newline at end of file
-- 
GitLab