diff options
| author | John Ogness <john.ogness@linutronix.de> | 2018-05-15 09:59:47 +0206 |
|---|---|---|
| committer | Your Name <you@example.com> | 2018-05-15 11:27:25 +0206 |
| commit | 4c9e26e323eea6e4d8229ec0a680e2f259b0073f (patch) | |
| tree | ab7abccbd096c1737c80e027275a99dda7fedb74 /application-devel | |
| parent | 39d7c8a20262c744e4bf08318bd1449260db72a3 (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.tex | 223 |
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} |
