124 lines
3.1 KiB
Markdown
124 lines
3.1 KiB
Markdown
|
|
### Git For Dummies
|
|
(And those who wish to become one)
|
|
|
|
---
|
|
### What is Git
|
|
|
|
Git is a Version Control System, that allows users to create snapshots of files.
|
|
(You can create Save States for your files)
|
|
|
|
---
|
|
|
|
### What do I need for that?
|
|
|
|
You will need:
|
|
- A PC
|
|
- The Git Software
|
|
|
|
---
|
|
### Setup Windows:
|
|
|
|
- Windows: https://gitforwindows.org
|
|
---
|
|
### Setup MacOS
|
|
Install Homebrew:
|
|
```
|
|
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
|
|
```
|
|
|
|
Then Install Git:
|
|
```
|
|
$ brew install git
|
|
```
|
|
|
|
---
|
|
### Setup Linux
|
|
|
|
Ubuntu/Debian:
|
|
|
|
```
|
|
sudo apt install git
|
|
```
|
|
|
|
Arch
|
|
```
|
|
pacman -S git
|
|
```
|
|
|
|
---
|
|
|
|
### Usage
|
|
|
|
Open your terminal and type:
|
|
```
|
|
git
|
|
```
|
|
|
|
---
|
|
|
|
# What is that?
|
|
|
|
```
|
|
usage: git [-v | --version] [-h | --help] [-C <path>] [-c <name>=<value>]
|
|
[--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
|
|
[-p | --paginate | -P | --no-pager] [--no-replace-objects] [--bare]
|
|
[--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]
|
|
[--config-env=<name>=<envvar>] <command> [<args>]
|
|
|
|
These are common Git commands used in various situations:
|
|
|
|
start a working area (see also: git help tutorial)
|
|
clone Clone a repository into a new directory
|
|
init Create an empty Git repository or reinitialize an existing one
|
|
|
|
work on the current change (see also: git help everyday)
|
|
add Add file contents to the index
|
|
mv Move or rename a file, a directory, or a symlink
|
|
restore Restore working tree files
|
|
rm Remove files from the working tree and from the index
|
|
|
|
examine the history and state (see also: git help revisions)
|
|
bisect Use binary search to find the commit that introduced a bug
|
|
diff Show changes between commits, commit and working tree, etc
|
|
grep Print lines matching a pattern
|
|
log Show commit logs
|
|
show Show various types of objects
|
|
status Show the working tree status
|
|
|
|
grow, mark and tweak your common history
|
|
branch List, create, or delete branches
|
|
commit Record changes to the repository
|
|
merge Join two or more development histories together
|
|
rebase Reapply commits on top of another base tip
|
|
reset Reset current HEAD to the specified state
|
|
switch Switch branches
|
|
tag Create, list, delete or verify a tag object signed with GPG
|
|
|
|
collaborate (see also: git help workflows)
|
|
fetch Download objects and refs from another repository
|
|
pull Fetch from and integrate with another repository or a local branch
|
|
push Update remote refs along with associated objects
|
|
|
|
'git help -a' and 'git help -g' list available subcommands and some
|
|
concept guides. See 'git help <command>' or 'git help <concept>'
|
|
to read about a specific subcommand or concept.
|
|
See 'git help git' for an overview of the system.
|
|
|
|
```
|
|
|
|
---
|
|
|
|
### Exercise 1
|
|
|
|
1. Create a new directory
|
|
2. Create a new File in that directory
|
|
3. `git init`
|
|
4. `git add <filename>`
|
|
5. `git commit -m "First Commit"`
|
|
---
|
|
|
|
### Useful Links
|
|
|
|
- https://learngitbranching.js.org - EIne Visuelle Darstellung von Git und Branches
|
|
- https://gitty.informatik.hs-mannheim.de/ - |