Changes for page Git
Last modified by Richard Kreissig on 2025/01/30 12:03
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Objects (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. msp1 +XWiki.cds - Content
-
... ... @@ -1,97 +1,19 @@ 1 -This tutorial will address the source code management (SCM) tool named [[Git>>url:http://git-scm.com/||shape="rect"]]. By following these steps you should learn about the basic usage of Git, which is required for the whole practical course. Furthermore, Git is a great SCM tool, and it's good to know how to use it. During this tutorial, we will follow Alan Turing's thoughts towards developing the [[Turing Machine>>url:http://en.wikipedia.org/wiki/Turing_machine||shape="rect"]].1 +This tutorial will address the source code management (SCM) tool named [[Git>>url:http://git-scm.com/||shape="rect"]]. 2 2 3 - Morein-depth documentation can be found onthe [[official home page>>url:http://git-scm.com/documentation||shape="rect"]],which mentions books, videos,andlinks toother tutorialsand references.3 += Repositories and Commits = 4 4 5 -= Creating Commits = 5 +{{task-list}} 6 +{{task id="1" status="incomplete"}} 7 +test1 8 +{{/task}} 6 6 7 -1. Read the [[Git for Computer Scientists>>url:http://eagain.net/articles/git-for-computer-scientists/||shape="rect"]] introduction (skip this if you are already familiar with Git). 8 -1. For Linux, Git is available in its own package. Windows users can install [[msysGit>>url:http://msysgit.github.com/||shape="rect"]]. For MacOS, Git is available as part of [[Xcode>>url:https://developer.apple.com/xcode/||shape="rect"]]; if you cannot install that, use [[Git for OSX>>url:http://code.google.com/p/git-osx-installer/||shape="rect"]]. 9 -1. ((( 10 -Create a local repository for the "//Turing Project//": 10 +{{task id="2" status="incomplete"}} 11 +test2 12 +{{/task}} 11 11 12 -{{noformat}} 13 -$ mkdir turing 14 -$ cd turing 15 -$ git init 16 -Initialized empty Git repository in ~/turing/.git/ 17 -{{/noformat}} 14 +{{task id="3" status="incomplete"}} 15 +test 3 16 +{{/task}} 17 +{{/task-list}} 18 18 19 -{{panel}} 20 -**$ mkdir turing**{{code language="none"}}{{/code}} 21 - 22 -**$ cd turing**{{code language="none"}}{{/code}} 23 - 24 -**$ git init**{{code language="none"}}{{/code}} 25 - 26 -{{code language="none"}}Initialized empty Git repository in ~/turing/.git/{{/code}} 27 -{{/panel}} 28 - 29 -{{code language="bash"}} 30 -$ mkdir turing 31 -$ cd turing 32 -$ git init 33 -Initialized empty Git repository in ~/turing/.git/ 34 -{{/code}} 35 -))) 36 -1. ((( 37 -Add some content: copy [[attach:notes.txt]]{{code language="none"}}{{/code}} to your {{code language="none"}}turing{{/code}} directory. 38 - 39 -{{noformat}} 40 -$ git add notes.txt 41 -$ git commit -m "wrote some first notes" 42 -[master (root-commit) 2e73b34] wrote some first notes 43 - 1 files changed, 5 insertions(+), 0 deletions(-) 44 - create mode 100644 notes.txt 45 -{{/noformat}} 46 -))) 47 -1. Edit {{code language="none"}}notes.txt{{/code}}:\\ 48 -11. Replace "fixed" with "infinite" in line 1. 49 -11. Replace "... (TODO)" with "a finite state machine" in line 4. 50 -1. ((( 51 -Commit the modified content to your local repository: 52 - 53 -{{noformat}} 54 -$ git add notes.txt 55 -$ git commit -m "modified tape length, found a controller for tape head" 56 -[master 3f28a0e] modified tape length, found a controller for tape head 57 - 1 files changed, 2 insertions(+), 2 deletions(-) 58 -{{/noformat}} 59 -))) 60 - 61 -After the preceding steps you have two commits in your local repository, each with one file in the index. You have different options for viewing these commits: 62 - 63 -{{noformat}} 64 -$ git log 65 -commit 3f28a0e473bf3da4aff34a09fed838fe033f3bb5 66 -Author: Miro Spoenemann <msp@informatik.uni-kiel.de> 67 -Date: Mon Oct 15 14:30:24 2012 +0200 68 - 69 - modified tape length, found a controller for tape head 70 - 71 -commit 2e73b34ac44480773fc0e52875b7353a087d8c6d 72 -Author: Miro Spoenemann <msp@informatik.uni-kiel.de> 73 -Date: Mon Oct 15 12:14:06 2012 +0200 74 - 75 - wrote some first notes 76 - 77 -$ git show 3f28a0e 78 -commit 3f28a0e473bf3da4aff34a09fed838fe033f3bb5 79 -Author: Miro Spoenemann <msp@informatik.uni-kiel.de> 80 -Date: Mon Oct 15 14:30:24 2012 +0200 81 - 82 - modified tape length, found a controller for tape head 83 - 84 -diff --git a/notes.txt b/notes.txt 85 -index 4ded2b3..bd422b3 100644 86 ---- a/notes.txt 87 -+++ b/notes.txt 88 -@@ -1,5 +1,5 @@ 89 -- * A tape with fixed length 90 -+ * A tape with infinite length 91 - * Tape head can read or write data 92 - * Tape head can move left or right 93 -- * The head is controlled by ... (TODO) 94 -+ * The head is controlled by a finite state machine 95 -{{/noformat}} 96 - 97 -Note that each commit is identified by a looong hash value, but it is possible to use only a prefix when referencing them (if the prefix is not ambiguous): the example above uses {{code language="none"}}3f28a0e{{/code}} to identify the second commit. 19 +\\
- Confluence.Code.ConfluencePageClass[0]
-
- Id
-
... ... @@ -1,1 +1,1 @@ 1 -29821 181 +2982104 - URL
-
... ... @@ -1,1 +1,1 @@ 1 -https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/WS12EclPract/pages/29821 18/Git1 +https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/WS12EclPract/pages/2982104/Git