Creating a general project for all topics of the Sys Admins Training

This commit is contained in:
vl4dd 2021-04-03 10:58:27 +02:00
parent 9842c4c419
commit 9a956b80ad
10 changed files with 271 additions and 259 deletions

View File

Before

Width:  |  Height:  |  Size: 41 KiB

After

Width:  |  Height:  |  Size: 41 KiB

View File

Before

Width:  |  Height:  |  Size: 171 KiB

After

Width:  |  Height:  |  Size: 171 KiB

View File

Before

Width:  |  Height:  |  Size: 43 KiB

After

Width:  |  Height:  |  Size: 43 KiB

View File

Before

Width:  |  Height:  |  Size: 70 KiB

After

Width:  |  Height:  |  Size: 70 KiB

View File

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 19 KiB

View File

Before

Width:  |  Height:  |  Size: 9.3 KiB

After

Width:  |  Height:  |  Size: 9.3 KiB

View File

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 28 KiB

259
Git/readme.md Normal file
View File

@ -0,0 +1,259 @@
# Git
![GitHub Logo](img/image.jpg)
## Usefull links
[Git Cheat Sheet](https://education.github.com/git-cheat-sheet-education.pdf)
## Git System
![Git System](img/Git_Guide.png)
## Remote Execution
![Remote Execution](img/Remote_execution.png)
## Basic commands
=================
### Initialize an existing directory as a Git repository
```bash
$ git init
Initialized empty Git repository in C:/Users/Admin/Documents/Git/.git/
```
### Show modified files in working directory, staged for your next commit
```bash
$ git status
On branch master
No commits yet
Untracked files:
(use "git add <file>..." to include in what will be committed)
Readme.md
image.jpg
nothing added to commit but untracked files present (use "git add" to track)
```
### Add a file as it looks now to your next commit (stage)
```bash
$ git add Readme.md image.jpg
```
### Commit your staged content as a new commit snapshot
```bash
$ git commit -m "First Commit"
[master (root-commit) 784ae2e] First Commit
Committer: unknown <Admin@FOR209-03.irisib.lan>
Your name and email address were configured automatically based
on your username and hostname. Please check that they are accurate.
You can suppress this message by setting them explicitly:
git config --global user.name "Your Name"
git config --global user.email you@example.com
After doing this, you may fix the identity used for this commit with:
git commit --amend --reset-author
2 files changed, 61 insertions(+)
create mode 100644 Readme.md
create mode 100644 image.jpg
```
### Set a name & email that is identifiable for credit when review version history
```bash
$ git config --global user.name “[firstname lastname]”
$ git config --global user.email “[valid-email]”
```
### Show all commits in the current branchs history
```bash
$ git log
commit 784ae2e2d10720c23eb7cebdf8386ef2157fe628 (HEAD -> master)
Author: unknown <Admin@FOR209-03.irisib.lan>
Date: Thu Apr 1 12:11:34 2021 +0200
First Commit
```
### tig vs git log --graph
Tig allows you to browse changes in a Git repository and can additionally act as a pager for output of various Git commands. When used as a pager, it will display input from stdin and colorize it.
When browsing repositories, Tig uses the underlying Git commands to present the user with various views, such as summarized commit log and showing the commit with the log message, diffstat, and the diff.
> $ tig
## tig
![tig](img/tig.PNG)
> $ git log --graph
## git log
![git log](img/git_log.PNG)
## SHARE & UPDATE
### Retrieving updates from another repository and updating local repos
=================================
add a git URL as an alias
>git remote add [alias] [url]
fetch down all the branches from that Git remote
>git fetch [alias]
merge a remote branch into your current branch to bring it up to date
>git merge [alias]/[branch]
Transmit local branch commits to the remote repository branch
>git push [alias] [branch]
>git pull
fetch and merge any commits from the tracking remote branch
## BRANCH & MERGE
### Isolating work in branches, changing context, and integrating changes
![Remote Execution](img/Branching.png)
>git branch
list your branches. a * will appear next to the currently active branch
>git branch [branch-name]
create a new branch at the current commit
>git checkout
switch to another branch and check it out into your working directory
>git checkout -b|-B <new_branch> [<start point>]
Specifying -b causes a new branch to be created as if git-branch(1) were called and then checked out.
If -B is given, <new_branch> is created if it doesnt exist; otherwise, it is reset. This is the transactional equivalent of
>git merge [branch]
merge the specified branchs history into the current one
>git log
show all commits in the current branchs history
## TRACKING PATH CHANGES
### Versioning file removes and path changes
=================================
Delete the file from project and stage the removal for commit
>git rm [file]
Change an existing file path and stage the move
>git mv [existing-path] [new-path]
Show all commit logs with indication of any paths that moved
>git log --stat -M
### History
```bash
history
1 git init
2 git status
3 git add Readme.md image.jpg
4 git status
5 git commit -m "First Commit"
6 git config --global user.name vl4dd
7 git config --global user.email ticus@kraland.net
8 git commit -m "First Commit"
9 git status
10 git log
11 git commit -m "Second commit"
12 git add Readme.md
13 git commit -m "Second commit"
14 git log
```
###
Checker le satus
> git status
Ajouter un element dans la branche
> git add Readme.md
Commit les changement
> git commit -m "First commit"
Show all commit
>git checkout
Merge
>git merge
## Setup
### Configuring user information used across all local repositories
>git config --global user.name “[firstname lastname]”
set a name that is identifiable for credit when review version history
>git config --global user.email “[valid-email]”
set an email address that will be associated with each history marker
>git config --global color.ui auto
set automatic command line coloring for Git for easy reviewing
### Saving your uncommitted work for a quick fix then getting it back
>git stash
temporarily stash your work since your last commit
>git stash pop
fetch your stashed work to continue it
$ git stash pop stash@{2}
in case you want to apply a specific Stash item (not the most recent one), you can provide the index name of that item in the "pop" option
### Rewriting history
>git commit --amend -m "New commit message"
replace the last commit
>git commit --amend --no-edit
replace the last commit without changing the commit message
>git rebase -i {branch}
take the precedent commit and add it to your branch
### Ignoring files
>touch .gitignore && echo {what you want to ignore} >> .gitignore
create a file and specify what (extensions, directories, files) to ignore in it
>git rm --cached {fileignored}
remove from the tracking index a file that should be ignored but wasnt because already tracked when the ignore rule was created

271
readme.md
View File

@ -1,259 +1,12 @@
# Git # LinuxSysAdminsDoc
![GitHub Logo](img/image.jpg) ## Description
Shared documentation for the brussels formation Linux Sys Admins group.
## Usefull links feel free to modify :)
[Git Cheat Sheet](https://education.github.com/git-cheat-sheet-education.pdf)
## Topics
### Git
## Git System - Cheat sheet
![Git System](img/Git_Guide.png) the basic Git commands to help you learn Git, and more advanced concepts around Git branches, remote repositories, undoing changes, and more.
- [Git Exercices](https://gitexercises.fracz.com/)
## Remote Execution Online platform to learn and practice Git. Discover its features you might haven't been aware of. With all the exercises provided you will rapidly become a Git Master!
![Remote Execution](img/Remote_execution.png)
## Basic commands
=================
### Initialize an existing directory as a Git repository
```bash
$ git init
Initialized empty Git repository in C:/Users/Admin/Documents/Git/.git/
```
### Show modified files in working directory, staged for your next commit
```bash
$ git status
On branch master
No commits yet
Untracked files:
(use "git add <file>..." to include in what will be committed)
Readme.md
image.jpg
nothing added to commit but untracked files present (use "git add" to track)
```
### Add a file as it looks now to your next commit (stage)
```bash
$ git add Readme.md image.jpg
```
### Commit your staged content as a new commit snapshot
```bash
$ git commit -m "First Commit"
[master (root-commit) 784ae2e] First Commit
Committer: unknown <Admin@FOR209-03.irisib.lan>
Your name and email address were configured automatically based
on your username and hostname. Please check that they are accurate.
You can suppress this message by setting them explicitly:
git config --global user.name "Your Name"
git config --global user.email you@example.com
After doing this, you may fix the identity used for this commit with:
git commit --amend --reset-author
2 files changed, 61 insertions(+)
create mode 100644 Readme.md
create mode 100644 image.jpg
```
### Set a name & email that is identifiable for credit when review version history
```bash
$ git config --global user.name “[firstname lastname]”
$ git config --global user.email “[valid-email]”
```
### Show all commits in the current branchs history
```bash
$ git log
commit 784ae2e2d10720c23eb7cebdf8386ef2157fe628 (HEAD -> master)
Author: unknown <Admin@FOR209-03.irisib.lan>
Date: Thu Apr 1 12:11:34 2021 +0200
First Commit
```
### tig vs git log --graph
Tig allows you to browse changes in a Git repository and can additionally act as a pager for output of various Git commands. When used as a pager, it will display input from stdin and colorize it.
When browsing repositories, Tig uses the underlying Git commands to present the user with various views, such as summarized commit log and showing the commit with the log message, diffstat, and the diff.
> $ tig
## tig
![tig](img/tig.PNG)
> $ git log --graph
## git log
![git log](img/git_log.PNG)
## SHARE & UPDATE
### Retrieving updates from another repository and updating local repos
=================================
add a git URL as an alias
>git remote add [alias] [url]
fetch down all the branches from that Git remote
>git fetch [alias]
merge a remote branch into your current branch to bring it up to date
>git merge [alias]/[branch]
Transmit local branch commits to the remote repository branch
>git push [alias] [branch]
>git pull
fetch and merge any commits from the tracking remote branch
## BRANCH & MERGE
### Isolating work in branches, changing context, and integrating changes
![Remote Execution](img/Branching.png)
>git branch
list your branches. a * will appear next to the currently active branch
>git branch [branch-name]
create a new branch at the current commit
>git checkout
switch to another branch and check it out into your working directory
>git checkout -b|-B <new_branch> [<start point>]
Specifying -b causes a new branch to be created as if git-branch(1) were called and then checked out.
If -B is given, <new_branch> is created if it doesnt exist; otherwise, it is reset. This is the transactional equivalent of
>git merge [branch]
merge the specified branchs history into the current one
>git log
show all commits in the current branchs history
## TRACKING PATH CHANGES
### Versioning file removes and path changes
=================================
Delete the file from project and stage the removal for commit
>git rm [file]
Change an existing file path and stage the move
>git mv [existing-path] [new-path]
Show all commit logs with indication of any paths that moved
>git log --stat -M
### History
```bash
history
1 git init
2 git status
3 git add Readme.md image.jpg
4 git status
5 git commit -m "First Commit"
6 git config --global user.name vl4dd
7 git config --global user.email ticus@kraland.net
8 git commit -m "First Commit"
9 git status
10 git log
11 git commit -m "Second commit"
12 git add Readme.md
13 git commit -m "Second commit"
14 git log
```
###
Checker le satus
> git status
Ajouter un element dans la branche
> git add Readme.md
Commit les changement
> git commit -m "First commit"
Show all commit
>git checkout
Merge
>git merge
## Setup
### Configuring user information used across all local repositories
>git config --global user.name “[firstname lastname]”
set a name that is identifiable for credit when review version history
>git config --global user.email “[valid-email]”
set an email address that will be associated with each history marker
>git config --global color.ui auto
set automatic command line coloring for Git for easy reviewing
### Saving your uncommitted work for a quick fix then getting it back
>git stash
temporarily stash your work since your last commit
>git stash pop
fetch your stashed work to continue it
$ git stash pop stash@{2}
in case you want to apply a specific Stash item (not the most recent one), you can provide the index name of that item in the "pop" option
### Rewriting history
>git commit --amend -m "New commit message"
replace the last commit
>git commit --amend --no-edit
replace the last commit without changing the commit message
>git rebase -i {branch}
take the precedent commit and add it to your branch
### Ignoring files
>touch .gitignore && echo {what you want to ignore} >> .gitignore
create a file and specify what (extensions, directories, files) to ignore in it
>git rm --cached {fileignored}
remove from the tracking index a file that should be ignored but wasnt because already tracked when the ignore rule was created