summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEkaitz Zarraga <ekaitz@elenq.tech>2022-05-20 20:57:02 +0200
committerEkaitz Zarraga <ekaitz@elenq.tech>2022-05-20 20:57:02 +0200
commit14f98bb4be016451570a2619533e92f7fe55e351 (patch)
tree0306ef0705dad3fe8c8e75afd7366ef837702b98
Lehengo zatia: git basikoa eta sarrera
-rw-r--r--1.md171
-rw-r--r--img/banatuak.pngbin0 -> 26657 bytes
-rw-r--r--img/lifecycle.pngbin0 -> 13727 bytes
-rw-r--r--img/zentralizatuak.pngbin0 -> 22810 bytes
-rw-r--r--template.tex236
5 files changed, 407 insertions, 0 deletions
diff --git a/1.md b/1.md
new file mode 100644
index 0000000..175dd76
--- /dev/null
+++ b/1.md
@@ -0,0 +1,171 @@
+---
+title: GIT — EITB 2022
+subtitle: Sarrera eta erabilera basikoa
+license: CC-BY-SA 4.0
+author: Ekaitz Zarraga
+links-as-notes: true
+lang: basque
+polyglossia-lang:
+ name: basque
+how-to: pandoc -f markdown+smart -t beamer % -o pdf/1.pdf --pdf-engine=xelatex --template=./template.tex
+...
+
+# Sarrera: Bertsio kontrol sistemak
+
+## Lizentzia
+
+- CC-BY-SA 4.0
+- Dokumentu honen edukiak eta irudiak [**Pro Git (Scott Chacon, Ben
+ Straub)**](https://git-scm.com/book/en/v2) liburutik atera dira.
+
+## Bertsio kontrolerako sistemak
+
+`Document_v3_FINAL.pdf`
+
+---
+
+![Bertsio kontrol sistema zentralizatuak](img/zentralizatuak.png){ height=180px }
+
+---
+
+![Bertsio kontrol sistema banatuak](img/banatuak.png){ height=300px }
+
+
+# GIT: Hasiera
+
+## Kontestua
+
+- 2005-ean argitaratu zen
+- Linux garapenerako garatu zen
+ - Milioika garatzaile
+ - *Codebase* handiak kudeatzeko
+- Sistema banatua (*distributed*) da
+- *Snapshot*etan oinarrituta
+- Operazio gehienak lokalak dira eta normalean ez ditu datuak ezabatzen
+- Integridade kontrola egiten du SHA-1 erabiliz
+- Hiru egoera:
+ `FITXATEGIA — STAGING AREA — REPOSITORIOA`
+
+## Instalazioa
+
+Debian oinarritutako distribuzioetan:
+
+```
+apt-get install git
+```
+
+Beste distribuzioetan antzeko komandoren batekin egin daiteke.
+
+
+## Konfigurazio sistema
+
+- Sistema mailakoa: `/etc/gitconfig`
+- Konfigurazio generala: `~/.config/git/config` edo `~/.gitconfig`
+- Konfigurazio lokala. Repositorio bakoitzeko: `$REPOSITORIOA/.git/config`
+
+Kaskada moduan dabil, konfigurazio lokalak generala zapaltzen du.
+Nondik datorren ikusteko:
+
+```
+git config --list --show-origin
+```
+
+## Konfigurazioa kudeatzea
+
+Komandoek konfigurazio fitxategia irakurri edo idazten dute. Eskuz egin
+daiteke.
+
+Komando orokorra:
+
+```
+git config [--global] atala.klabea [balioa]
+```
+
+- `balioa` gehitzen ez bada konfigurazioa irakurtzen da idatzi beharrean.
+- `--global` konfigurazio globala kudeatzeko erabiltzen da.
+
+Benetan konplexuagoa da, laguntza begiratu.
+
+
+## Hasierako konfigurazioa
+
+Identitatea definitu. Beharrezkoa da commiten egilea nor den jakiteko.
+
+```
+git config --global user.name "John Doe"
+git config --global user.email johndoe@example.com
+```
+
+Editorea aukeratzeko.
+
+```
+git config --global core.editor vim
+```
+
+
+
+## Laguntza lortzeko
+
+- `git help`
+- `man`
+
+
+# GIT: Basikoa
+
+## Repositorio bat lortzen
+
+Bi aukera:
+
+- Repositorio berri bat hasi: `git init`. Oraingo direktorioan `.git`
+ direktorioa eratuko du, bertan Git-en datuak gordeko dira.
+
+- Repositorio bat klonatu: `git clone <URL>`. Oraingo direktorioan emandako
+ repositorioa kopiatuko du, bere `.git` direktorioa barne. Protokolo
+ ezberdinetan egin daiteke komunikazioa.
+
+## Fitxategien egoerak
+
+![Fitxategien egoera ezberdinak](img/lifecycle.png){ height=180px }
+
+## Repositorioaren egoera ikusteko
+
+- `git status`
+- Fitxategi batzuei jaramonik ez egiteko: `.gitignore` fitxategi bat gehitu.
+ *Glob pattern*ak erabiltzen ditu.
+
+## Egoeraz aldatzeko
+
+- Fitxategi berriak gehitzeko: `git add`
+- Aldaketak *staging area*ra bidaltzeko: `git add`
+
+## Aldaketak ikusteko
+
+- `git diff`
+- `git diff --cached|--staged`
+- `git difftool` (konfiguratuta badago)
+
+## Aldaketak idazteko
+
+- `git commit`
+
+Mezu bat idaztea eskatzen du: `$EDITOR` edo `git config --global core.editor`
+programa exekutatuz.
+
+## Fitxategiak ezabatzeko
+
+- `git rm`
+- `git rm --cached`
+
+## Izenak aldatzeko
+
+- `git mv`
+
+Edo bestela fitxategia eskuz lekuz aldatu eta gero `git rm` + `git add` egin.
+
+
+
+## Commit historia ikusteko — I
+
+- `git log`
+
+Oso komando komplexua da, eta aukera asko ditu.
diff --git a/img/banatuak.png b/img/banatuak.png
new file mode 100644
index 0000000..53cfcae
--- /dev/null
+++ b/img/banatuak.png
Binary files differ
diff --git a/img/lifecycle.png b/img/lifecycle.png
new file mode 100644
index 0000000..922b02c
--- /dev/null
+++ b/img/lifecycle.png
Binary files differ
diff --git a/img/zentralizatuak.png b/img/zentralizatuak.png
new file mode 100644
index 0000000..9aa3e90
--- /dev/null
+++ b/img/zentralizatuak.png
Binary files differ
diff --git a/template.tex b/template.tex
new file mode 100644
index 0000000..31b2bf7
--- /dev/null
+++ b/template.tex
@@ -0,0 +1,236 @@
+\documentclass[$if(fontsize)$$fontsize$,$endif$$if(lang)$$babel-lang$,$endif$$if(handout)$handout,$endif$$if(beamer)$ignorenonframetext,$endif$$for(classoption)$$classoption$$sep$,$endfor$]{$documentclass$}
+\setbeamertemplate{caption}[numbered]
+\setbeamertemplate{caption label separator}{: }
+\selectcolormodel{gray} % Color B&W
+\beamertemplatenavigationsymbols$if(navigation)$$navigation$$else$empty$endif$
+
+\usepackage{amssymb,amsmath}
+\usepackage{ifxetex,ifluatex}
+\usepackage{fixltx2e} % provides \textsubscript
+
+
+\usefonttheme{professionalfonts} % using non standard fonts for beamer
+\usefonttheme{serif} % default family is serif
+
+% Font
+\usepackage{fontspec}
+\setmainfont[
+ BoldFont = Lato-Bold.ttf,
+ ItalicFont = Lato-Italic.ttf,
+ BoldItalicFont = Lato-BoldItalic.ttf
+]{Lato-Regular.ttf}
+\newcommand{\euro}{€}
+
+% Images with no captions
+\usepackage{caption}
+\captionsetup[figure]{labelformat=empty}
+
+% Bullet style
+\useinnertheme{circles}
+\newlength{\wideitemsep}
+\setlength{\wideitemsep}{\itemsep}
+\addtolength{\wideitemsep}{5pt}
+\let\olditem\item
+\renewcommand{\item}{\setlength{\itemsep}{\wideitemsep}\olditem}
+
+$if(euro)$
+ \newcommand{\euro}{€}
+$endif$
+
+% Language
+\usepackage{polyglossia}
+\setmainlanguage[$polyglossia-lang.options$]{$polyglossia-lang.name$}
+
+\newif\ifbibliography
+$if(natbib)$
+\usepackage{natbib}
+\bibliographystyle{$if(biblio-style)$$biblio-style$$else$plainnat$endif$}
+$endif$
+$if(biblatex)$
+\usepackage[$if(biblio-style)$style=$biblio-style$,$endif$$for(biblatexoptions)$$biblatexoptions$$sep$,$endfor$]{biblatex}
+$for(bibliography)$
+\addbibresource{$bibliography$}
+$endfor$
+$endif$
+
+$if(verbatim-in-note)$
+\usepackage{fancyvrb}
+$endif$
+
+\hypersetup{
+$if(title-meta)$
+ pdftitle={$title-meta$},
+$endif$
+$if(author-meta)$
+ pdfauthor={$author-meta$},
+$endif$
+$if(keywords)$
+ pdfkeywords={$for(keywords)$$keywords$$sep$, $endfor$},
+$endif$
+$if(colorlinks)$
+ colorlinks=true,
+ linkcolor=$if(linkcolor)$$linkcolor$$else$Maroon$endif$,
+ citecolor=$if(citecolor)$$citecolor$$else$Blue$endif$,
+ urlcolor=$if(urlcolor)$$urlcolor$$else$Blue$endif$,
+$else$
+ pdfborder={0 0 0},
+$endif$
+ breaklinks=true}
+\urlstyle{same} % don't use monospace font for urls
+$if(verbatim-in-note)$
+\VerbatimFootnotes % allows verbatim text in footnotes
+$endif$
+$if(listings)$
+\usepackage{listings}
+$endif$
+$if(lhs)$
+\lstnewenvironment{code}{\lstset{language=Haskell,basicstyle=\small\ttfamily}}{}
+$endif$
+$if(highlighting-macros)$
+$highlighting-macros$
+$endif$
+$if(tables)$
+\usepackage{longtable,booktabs}
+\usepackage{caption}
+% These lines are needed to make table captions work with longtable:
+\makeatletter
+\def\fnum@table{\tablename~\thetable}
+\makeatother
+$endif$
+$if(graphics)$
+\usepackage{graphicx,grffile}
+\makeatletter
+\def\maxwidth{\ifdim\Gin@nat@width>\linewidth\linewidth\else\Gin@nat@width\fi}
+\def\maxheight{\ifdim\Gin@nat@height>\textheight0.8\textheight\else\Gin@nat@height\fi}
+\makeatother
+% Scale images if necessary, so that they will not overflow the page
+% margins by default, and it is still possible to overwrite the defaults
+% using explicit options in \includegraphics[width, height, ...]{}
+\setkeys{Gin}{width=\maxwidth,height=\maxheight,keepaspectratio}
+$endif$
+
+% Prevent slide breaks in the middle of a paragraph:
+\widowpenalties 1 10000
+\raggedbottom
+
+$if(section-titles)$
+\AtBeginPart{
+ \let\insertpartnumber\relax
+ \let\partname\relax
+ \frame{\partpage}
+}
+\AtBeginSection{
+ \ifbibliography
+ \else
+ \let\insertsectionnumber\relax
+ \let\sectionname\relax
+ \frame{\sectionpage}
+ \fi
+}
+\AtBeginSubsection{
+ \let\insertsubsectionnumber\relax
+ \let\subsectionname\relax
+ \frame{\subsectionpage}
+}
+$endif$
+
+$if(links-as-notes)$
+% Make links footnotes instead of hotlinks:
+\renewcommand{\href}[2]{#2\footnote{\url{#1}}}
+$endif$
+
+$if(strikeout)$
+\usepackage[normalem]{ulem}
+% avoid problems with \sout in headers with hyperref:
+\pdfstringdefDisableCommands{\renewcommand{\sout}{}}
+$endif$
+\setlength{\parindent}{0pt}
+\setlength{\parskip}{6pt plus 2pt minus 1pt}
+\setlength{\emergencystretch}{3em} % prevent overfull lines
+\providecommand{\tightlist}{%
+ \setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}
+$if(numbersections)$
+\setcounter{secnumdepth}{$if(secnumdepth)$$secnumdepth$$else$5$endif$}
+$else$
+\setcounter{secnumdepth}{0}
+$endif$
+$if(dir)$
+\ifxetex
+ % load bidi as late as possible as it modifies e.g. graphicx
+ $if(latex-dir-rtl)$
+ \usepackage[RTLdocument]{bidi}
+ $else$
+ \usepackage{bidi}
+ $endif$
+\fi
+\ifnum 0\ifxetex 1\fi\ifluatex 1\fi=0 % if pdftex
+ \TeXXeTstate=1
+ \newcommand{\RL}[1]{\beginR #1\endR}
+ \newcommand{\LR}[1]{\beginL #1\endL}
+ \newenvironment{RTL}{\beginR}{\endR}
+ \newenvironment{LTR}{\beginL}{\endL}
+\fi
+$endif$
+$for(header-includes)$
+$header-includes$
+$endfor$
+
+$if(title)$
+\title{$title$}
+$endif$
+$if(subtitle)$
+\subtitle{$subtitle$}
+$endif$
+$if(author)$
+\author{$for(author)$$author$$sep$ \and $endfor$}
+$endif$
+$if(institute)$
+\institute{$for(institute)$$institute$$sep$ \and $endfor$}
+$endif$
+\date{$date$}
+
+\begin{document}
+$if(title)$
+\frame{\titlepage}
+$endif$
+
+$for(include-before)$
+$include-before$
+
+$endfor$
+$if(toc)$
+\begin{frame}
+\tableofcontents[hideallsubsections]
+\end{frame}
+
+$endif$
+$body$
+
+$if(natbib)$
+$if(bibliography)$
+$if(biblio-title)$
+$if(book-class)$
+\renewcommand\bibname{$biblio-title$}
+$else$
+\renewcommand\refname{$biblio-title$}
+$endif$
+$endif$
+\begin{frame}[allowframebreaks]{$biblio-title$}
+\bibliographytrue
+\bibliography{$for(bibliography)$$bibliography$$sep$,$endfor$}
+\end{frame}
+
+$endif$
+$endif$
+$if(biblatex)$
+\begin{frame}[allowframebreaks]{$biblio-title$}
+\bibliographytrue
+\printbibliography[heading=none]
+\end{frame}
+
+$endif$
+$for(include-after)$
+$include-after$
+
+$endfor$
+\end{document}