summaryrefslogtreecommitdiff
path: root/application-devel
diff options
context:
space:
mode:
authorJohn Ogness <john.ogness@linutronix.de>2018-05-15 09:59:47 +0206
committerYour Name <you@example.com>2018-05-15 11:27:25 +0206
commit4c9e26e323eea6e4d8229ec0a680e2f259b0073f (patch)
treeab7abccbd096c1737c80e027275a99dda7fedb74 /application-devel
parent39d7c8a20262c744e4bf08318bd1449260db72a3 (diff)
application-devel: cleanup git-basics slide text
Use a consistent and easy to read capitalization scheme. This patch fixes some minor typos discovered during capitalization changes. Signed-off-by: John Ogness <john.ogness@linutronix.de>
Diffstat (limited to 'application-devel')
-rw-r--r--application-devel/git/frm_git_basics.tex223
1 files changed, 113 insertions, 110 deletions
diff --git a/application-devel/git/frm_git_basics.tex b/application-devel/git/frm_git_basics.tex
index e23966c..3d5f7d5 100644
--- a/application-devel/git/frm_git_basics.tex
+++ b/application-devel/git/frm_git_basics.tex
@@ -1,15 +1,15 @@
% ----------------------------
-\subsubsection{Git Basics}
+\subsection{Git Basics}
% ----------------------------
\begin{frame}[fragile]{What is Git?}
\begin{itemize}
-\item Version Control System (VCS)
-\item Snapshot Store (no Diffs)
-\item Fully Distributed
-\item Full local History
-\item Optimized for Non-linear Development
-\item Measured Code Integrity (Merkle-Tree)
+\item version control system (VCS)
+\item snapshot store (no diffs)
+\item fully distributed
+\item full local history
+\item optimized for non-linear development
+\item measured code integrity (Merkle-Tree)
\end{itemize}
\end{frame}
@@ -18,23 +18,23 @@
\begin{itemize}
\item Working Tree
\begin{itemize}
- \item All Files of a Snapshot
- \item Checkout of a Commit History (Branch, Tag, detached)
+ \item all files of a snapshot
+ \item checkout of a commit history (branch, tag, detached)
\end{itemize}
\item Staging Area
\begin{itemize}
- \item Preparation for Commit
- \item Workingtree -> Staging Area -> Commit
+ \item preparation for commit
+ \item Working Tree -> Staging Area -> Commit
\end{itemize}
\item Commit
\begin{itemize}
- \item ID: Unique Identifier
- \item Changeset with Description
+ \item ID: unique identifier
+ \item changeset with description
\end{itemize}
\item Branch
\begin{itemize}
- \item Local: Separate List of Commits
- \item Remote: Pointer to a Commit
+ \item Local: separate list of commits
+ \item Remote: pointer to a commit
\end{itemize}
\end{itemize}
\end{frame}
@@ -44,21 +44,21 @@
\begin{itemize}
\item Tags
\begin{itemize}
- \item Reference to a Commit ID
+ \item reference to a commit ID
\item annotated: with own description
\end{itemize}
\item Objects
\begin{itemize}
- \item Storage Containers
- \item Hashed Versions of Files
+ \item storage containers
+ \item hashed versions of files
\end{itemize}
\item HEAD
\begin{itemize}
- \item Pointer to Top-Level Commit of Branch or Workingtree
+ \item pointer to top-level commit of branch or working tree
\end{itemize}
\item Stash
\begin{itemize}
- \item Store for non-committed Changes
+ \item store for non-committed changes
\end{itemize}
\end{itemize}
\end{frame}
@@ -66,11 +66,11 @@
% ----------------------------
\begin{frame}[fragile]{Collaboration}
\begin{itemize}
-\item Pull/Push Changes from/to other Repositories
-\item between local User Repositories (file-system)
-\item Web-server based Repositories (read-only)
-\item User Access Control (e.g. with git or ssh)
-\item Protocols
+\item pull/push changes from/to other repositories
+\item between local user repositories (file-system)
+\item web-server based repositories (read-only)
+\item user access control (e.g. with git or ssh)
+\item protocols
\begin{itemize}
\item \texttt{file://}
\item \texttt{http://}
@@ -83,7 +83,7 @@
\end{frame}
% ----------------------------
-\begin{frame}[fragile]{File States in Workingtree}
+\begin{frame}[fragile]{File States in Working Tree}
\begin{figure}[h]
\centering
\includegraphics[width=8cm]{images/git_file_states.png}
@@ -91,22 +91,22 @@
\end{frame}
% ----------------------------
-\subsubsection{Best Practice}
+\subsection{Best Practice}
% ----------------------------
-\begin{frame}[fragile]{Best Practice}
+\begin{frame}[fragile]{General Guidelines}
\begin{itemize}
-\item use Local Repositories (keep track also for small, local projects)
-\item commit Functional Changes
-\item Split Commits into separate, functional Entities
-\item Separate Branch for Feature
-\item Push frequently to Remote Repositories
-\item Write significant Commit Messages
+\item use local repositories (also keep track of small, local projects)
+\item commit functional changes
+\item split commits into separate, functional entities
+\item separate branch for feature
+\item push frequently to remote repositories
+\item write significant commit messages
\begin{itemize}
- \item Problem/Motivation
- \item Problem Context
- \item Fix/Feature Description
- \item use Commit ID to refer to other Commits
+ \item problem/motivation
+ \item problem context
+ \item fix/feature description
+ \item use commit ID to refer to other commits
\end{itemize}
\end{itemize}
\end{frame}
@@ -114,8 +114,8 @@
% ----------------------------
\begin{frame}[fragile]{Bad Commit Messages}
\begin{itemize}
-\item Non-existing Commit Message
-\item Mix Functional Changes
+\item non-existing commit message
+\item mix functional changes
\end{itemize}
\begin{beamerboxesrounded}[shadow=true]{Bad Example I}
\begin{scriptsize}
@@ -185,25 +185,25 @@ Date: Mon Feb 26 13:00:00 2018 +0100
\end{frame}
% ----------------------------
-\subsubsection{Working with local Git Repositories}
+\subsection{Local Git Repositories}
% ----------------------------
-\begin{frame}[fragile]{Create an empty Repository}
+\begin{frame}[fragile]{Create an Empty Repository}
\begin{itemize}
-\item Create a top-level Directory
-\item Initialize the Repository Configuration and History
+\item create a top-level directory
+\item initialize the repository configuration and history
\end{itemize}
-\begin{beamerboxesrounded}[shadow=true]{Example: Create empty Repository}
+\begin{beamerboxesrounded}[shadow=true]{Example: Create Empty Repository}
\begin{scriptsize}
\begin{verbatim}
-# Create top-level Directory of Repo
+# create top-level directory of repo
mkdir myrepo
-# Initialize Repository
+# initialize repository
cd ./myrepo
git init
-# opt.: Initialize Repository without Workingtree
+# alternative: initialize repository without working tree
git init --bare
\end{verbatim}
\end{scriptsize}
@@ -213,25 +213,28 @@ git init --bare
% ----------------------------
\begin{frame}[fragile]{Git Configuration}
\begin{itemize}
-\item System-wide Configuration (Scope of Distribution)
-\item Global Configuration (Defaults for all Repositories of a User)
+\item system-wide configuration (scope of distribution)
\begin{itemize}
- \item Location: \texttt{\~{}/.gitconfig}
+ \item location: \texttt{/etc/gitconfig}
\end{itemize}
-\item Local Configuration (Repository-local)
+\item global configuration (defaults for all repositories of a user)
\begin{itemize}
- \item Location: \texttt{<repo-dir>/.git/config}
+ \item location: \texttt{\~{}/.gitconfig}
+ \end{itemize}
+\item local configuration (repository-local)
+ \begin{itemize}
+ \item location: \texttt{<repo-dir>/.git/config}
\end{itemize}
\end{itemize}
\begin{beamerboxesrounded}[shadow=true]{Example: Configure Git}
\begin{scriptsize}
\begin{verbatim}
-# Set Name and E-Mails address of the User
+# set name and e-mail address of the user
git config --global --add user.name "Jo Developer"
git config --global --add user.email "devel@acme.com"
git config --global --add core.editor "pluma"
-# Other E-Mail address for some Repositories
+# other e-mail address for some repositories
cd <repo-dir>
git config --local --add user.email "devel@private-mail.eu"
\end{verbatim}
@@ -242,29 +245,29 @@ git config --local --add user.email "devel@private-mail.eu"
% ----------------------------
\begin{frame}[fragile]{Add/Change Files}
\begin{itemize}
-\item Create (or edit) Files
-\item Check Changes
-\item Stage Changes
-\item Commit Changes
+\item create (or edit) files
+\item check changes
+\item stage changes
+\item commit changes
\end{itemize}
\begin{beamerboxesrounded}[shadow=true]{Example: Add File to Repository}
\begin{scriptsize}
\begin{verbatim}
-# Add or Edit Files
+# add or edit files
echo "hello world" > myfile
-# Check unstaged Changes
+# check unstaged changes
git status
git diff
-# Stage Changes
+# stage changes
git add myfile
-# Check staged Changes
+# check staged changes
git status
git diff --cached
-# Commit staged Changes (opens editor for the commit message)
+# commit staged changes (opens editor for the commit message)
git commit -s
\end{verbatim}
\end{scriptsize}
@@ -274,20 +277,20 @@ git commit -s
% ----------------------------
\begin{frame}[fragile]{Cleanup}
\begin{itemize}
-\item Clean untracked Files
-\item Reset unstaged Changes (reset to Repository Version)
-\item Remove Files from Stage Area (reset to unstaged State)
+\item clean untracked files
+\item reset unstaged changes (reset to repository version)
+\item remove files from stage area (reset to unstaged state)
\end{itemize}
\begin{beamerboxesrounded}[shadow=true]{Examples: Cleanup}
\begin{scriptsize}
\begin{verbatim}
-# Delete untracked Files
+# delete untracked files
git clean
-# Rollback File Changes
+# rollback file changes
git checkout -- path/to/file
-# Remove File from Stage Area
+# remove file from stage area
git reset HEAD path/to/file
\end{verbatim}
\end{scriptsize}
@@ -297,28 +300,28 @@ git reset HEAD path/to/file
% ----------------------------
\begin{frame}[fragile]{Exclude Files from Version Tracking}
\begin{itemize}
-\item List of ignored Files (~/.gitignore)
-\item specific List for each Directory possible
-\item allow Wildcards
-\item Wildcard Exceptions starts with "!"
+\item list of ignored files (<repo-dir>/.gitignore)
+\item specific list for each directory possible
+\item allow wildcards
+\item wildcard exceptions start with "!"
\end{itemize}
\begin{beamerboxesrounded}[shadow=true]{Example: Ignore List}
\begin{scriptsize}
\begin{verbatim}
-# Fill Ignore List
-cat > .gitignore << EOF
+# fill ignore List
+cat > .gitignore << 'EOF'
.*
!.gitignore
*.o
*.exe
EOF
-# Check Status
+# check status
git status
-# Commit intial Ignore List
+# commit intial ignore list
git add .gitignore
-gitcommit -s -m "Initial Repository Ignore List"
+git commit -s -m "initial repository ignore list"
\end{verbatim}
\end{scriptsize}
\end{beamerboxesrounded}
@@ -327,20 +330,20 @@ gitcommit -s -m "Initial Repository Ignore List"
% ----------------------------
\begin{frame}[fragile]{Branches}
\begin{itemize}
-\item Create new Branch from:
+\item Create a new branch from:
\begin{itemize}
- \item Commit (ID)
- \item Tag
- \item existing Branch
+ \item commit (ID)
+ \item tag
+ \item existing branch
\end{itemize}
\end{itemize}
\begin{beamerboxesrounded}[shadow=true]{Example: Branches}
\begin{scriptsize}
\begin{verbatim}
-# Create a new Branch (no changes to Workingtree)
-git branch <branch-name> [<commit/branch/tag>]
+# create a new branch (no changes to working tree)
+git branch <new-branch> [<commit/branch/tag>]
-# Create a new Branch and checkout to Workingtree
+# create a new branch and checkout to working tree
git checkout -b <new-branch> [<commit/branch/tag>]
\end{verbatim}
\end{scriptsize}
@@ -348,19 +351,19 @@ git checkout -b <new-branch> [<commit/branch/tag>]
\end{frame}
% ----------------------------
-\subsubsection{Working with Remote Git Repositories}
+\subsection{Working with Remote Git Repositories}
% ----------------------------
\begin{frame}[fragile]{Clone Repository}
\begin{itemize}
-\item Clone a Remote Repository
-\item Creates a local Clone (Copy) of another Repository (with complete
-History)
+\item clone a remote repository
+\item creates a local clone (copy) of another repository (with complete
+history)
\end{itemize}
\begin{beamerboxesrounded}[shadow=true]{Example: Clone Repository}
\begin{scriptsize}
\begin{verbatim}
-# Clone Linux Kernel Repository from Github
+# clone Linux kernel repository from Github
git clone https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
# check content
@@ -368,10 +371,10 @@ cd linux
ls -l
git log
-# Clone Linux Kernel Repository from Github without Workingtree
+# clone Linux kernel repository from Github without working tree
git clone --bare https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
-# no Checkouts, but History is available
+# no checkouts, but history is available
cd linux.git
ls -l
git log
@@ -383,16 +386,16 @@ git log
% ----------------------------
\begin{frame}[fragile]{Add Remote Repositories}
\begin{itemize}
-\item multiple Remotes possible
-\item e.g.: Pull from Development- and push to Release-Repository
+\item multiple remotes possible
+\item e.g. pull from development repository and push to release repository
\end{itemize}
\begin{beamerboxesrounded}[shadow=true]{Examples: Remote}
\begin{scriptsize}
\begin{verbatim}
-# Check all Remotes (with URL)
+# check all remotes (with URL)
git remote -v
-# Add a new Remote
+# add a new remote
git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
\end{verbatim}
\end{scriptsize}
@@ -402,20 +405,20 @@ git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/li
% ----------------------------
\begin{frame}[fragile]{Synchronize/Get Changes from Remote}
\begin{itemize}
-\item Fetch: update Repository History
-\item Pull: update Repository and Workingtree
+\item fetch: update repository history
+\item pull: update repository and working tree
\end{itemize}
\begin{beamerboxesrounded}[shadow=true]{Examples: Fetch/Pull}
\begin{scriptsize}
\begin{verbatim}
-# update History from Maniline Repository
+# update history from mainline repository
git fetch linus
-# Update History of all Remote Repositories
+# update history of all remote repositories
git fetch --all
-# Synchronize the local master Workingtree with master Branch
-# of Remote "linus"
+# synchronize the local master working tree with master branch
+# of remote "linus"
git checkout master
git pull linus master
\end{verbatim}
@@ -426,21 +429,21 @@ git pull linus master
% ----------------------------
\begin{frame}[fragile]{Synchronize/Put Changes to Remote}
\begin{itemize}
-\item Push Changes to another Repository
-\item Requires Write-Access
+\item push changes to another repository
+\item requires write-access
\end{itemize}
\begin{beamerboxesrounded}[shadow=true]{Examples: Push}
\begin{scriptsize}
\begin{verbatim}
-# Prepare the Push-Branch
+# prepare the push-branch
git checkout -b release-v1.0 master
-# Pull from Development Repository
+# pull from development repository
git pull devel-repo prepare_master-v1.0
-# Push Release Branch to Release Repository
-# (creates new Branch in Remote Repository)
-git push release-repo release-v1.0 master
+# push release branch to release repository
+# (creates new branch in remote repository)
+git push release-repo release-v1.0
\end{verbatim}
\end{scriptsize}
\end{beamerboxesrounded}