123 lines
1.3 KiB
Markdown
123 lines
1.3 KiB
Markdown
# Possibilités
|
|
|
|
1. Outils
|
|
1. Concepts
|
|
|
|
## Outils
|
|
|
|
### Hachage
|
|
|
|
::: incremental
|
|
* SHA-1
|
|
* SHA-256
|
|
:::
|
|
|
|
::: notes
|
|
* versions ≥ 2.42 rétro-compatibles
|
|
:::
|
|
|
|
### Pointeurs
|
|
|
|
* branches
|
|
* étiquettes
|
|
|
|
# {-}
|
|
## Concepts
|
|
|
|
### Zones
|
|
|
|
::: incremental
|
|
* répertoire de travail
|
|
* index
|
|
* historique
|
|
:::
|
|
|
|
# Porcelaine
|
|
|
|
1. Bases
|
|
1. Local
|
|
1. Collaborer
|
|
|
|
## Bases
|
|
|
|
### git init
|
|
|
|
* bare | non-bare
|
|
|
|
### git config
|
|
|
|
* system → global → local
|
|
* user name & email
|
|
* description
|
|
|
|
### git status
|
|
|
|
* -u
|
|
|
|
# {-}
|
|
## Local
|
|
|
|
### Commandes
|
|
|
|
* git branch --force
|
|
* git add
|
|
* git commit
|
|
* git checkout | switch
|
|
* git worktree
|
|
* git merge
|
|
* fast-forward
|
|
* three-way
|
|
* git rebase
|
|
* as-is
|
|
* merge-squash
|
|
* cherry-pick
|
|
* interactive
|
|
* git reflog
|
|
|
|
# {-}
|
|
## Collaborer
|
|
|
|
### Commandes
|
|
|
|
* git remote | clone
|
|
* git fetch | pull
|
|
* git push
|
|
* git tag
|
|
|
|
# Plomberie
|
|
|
|
1. Basique
|
|
1. Pointeurs
|
|
1. Objets
|
|
|
|
## Basique
|
|
|
|
* .git/
|
|
|
|
::: incremental
|
|
* config
|
|
* description
|
|
:::
|
|
|
|
# {-}
|
|
## Pointeurs
|
|
|
|
* .git/refs/
|
|
|
|
::: incremental
|
|
1. heads/branch
|
|
1. remotes/remote/branch
|
|
1. tags/tag
|
|
:::
|
|
|
|
# {-}
|
|
## Objets
|
|
|
|
* .git/objects
|
|
* git cat-file -t|-p hash
|
|
* git update-ref refs/heads/dev hash
|
|
* git symbolic-ref HEAD refs/heads/main
|
|
* git hash-object -w file
|
|
* git update-index
|
|
* git write-tree
|
|
* git commit-tree
|