Configura git #
Panoramica n.
Le tue configurazioni git personali vengono salvate nel .gitconfig
file nella tua home directory.
Ecco un .gitconfig
file di esempio:
[user]
name = Your Name
email = [email protected]
[alias]
ci = commit -a
co = checkout
st = status
stat = status
br = branch
wdiff = diff --color-words
[core]
editor = vim
[merge]
summary = true
Puoi controllare cosa c'è già nel tuo file di configurazione usando il comando. Puoi modificare il file direttamente o puoi usare il
comando.:git config --list
.gitconfig
git config --global
git config --global user.name "Your Name"
git config --global user.email [email protected]
git config --global alias.ci "commit -a"
git config --global alias.co checkout
git config --global alias.st "status -a"
git config --global alias.stat "status -a"
git config --global alias.br branch
git config --global alias.wdiff "diff --color-words"
git config --global core.editor vim
git config --global merge.summary true
Per eseguire la configurazione su un altro computer, puoi copiare il tuo ~/.gitconfig
file o eseguire i comandi sopra.
Nel dettaglio #
user.name e user.email #
È buona norma dire a git chi sei, per etichettare eventuali modifiche apportate al codice. Il modo più semplice per farlo è dalla riga di comando:
git config --global user.name "Your Name"
git config --global user.email [email protected]
Questo scriverà le impostazioni nel tuo file di configurazione git, che ora dovrebbe contenere una sezione utente con il tuo nome e la tua email:
[user]
name = Your Name
email = [email protected]
Dovrai sostituire e
con il tuo vero nome e indirizzo email.Your Name
you@yourdomain.example.com
Alias #
Potresti trarre vantaggio da alcuni alias per comandi comuni.
Ad esempio, potresti voler essere in grado di abbreviare
in . Oppure potresti voler creare un alias
(che fornisce un output ben formattato del diff) agit checkout
git co
git diff --color-words
git wdiff
I seguenti comandi:git config --global
git config --global alias.ci "commit -a"
git config --global alias.co checkout
git config --global alias.st "status -a"
git config --global alias.stat "status -a"
git config --global alias.br branch
git config --global alias.wdiff "diff --color-words"
creerà una alias
sezione nel tuo .gitconfig
file con contenuti come questo:
[alias]
ci = commit -a
co = checkout
st = status -a
stat = status -a
br = branch
wdiff = diff --color-words
Editore n.
Potresti anche voler assicurarti che venga utilizzato il tuo editor preferito
git config --global core.editor vim
Unione #
Per applicare i riepiloghi quando si eseguono unioni ( ~/.gitconfig
di nuovo file):
[merge]
log = true
Oppure dalla riga di comando:
git config --global merge.log true
Output di log di fantasia #
Questo è un alias molto carino per ottenere un output di registro di fantasia; dovrebbe andare nella
alias
sezione del tuo .gitconfig
file:
lg = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)[%an]%Creset' --abbrev-commit --date=relative
Usi l'alias con:
git lg
e fornisce un output grafico/testo simile a questo (ma con il colore!):
* 6d8e1ee - (HEAD, origin/my-fancy-feature, my-fancy-feature) NF - a fancy file (45 minutes ago) [Matthew Brett]
* d304a73 - (origin/placeholder, placeholder) Merge pull request #48 from hhuuggoo/master (2 weeks ago) [Jonathan Terhorst]
|\
| * 4aff2a8 - fixed bug 35, and added a test in test_bugfixes (2 weeks ago) [Hugo]
|/
* a7ff2e5 - Added notes on discussion/proposal made during Data Array Summit. (2 weeks ago) [Corran Webster]
* 68f6752 - Initial implementation of AxisIndexer - uses 'index_by' which needs to be changed to a call on an Axes object - this is all very sketchy right now. (2 weeks ago) [Corr
* 376adbd - Merge pull request #46 from terhorst/master (2 weeks ago) [Jonathan Terhorst]
|\
| * b605216 - updated joshu example to current api (3 weeks ago) [Jonathan Terhorst]
| * 2e991e8 - add testing for outer ufunc (3 weeks ago) [Jonathan Terhorst]
| * 7beda5a - prevent axis from throwing an exception if testing equality with non-axis object (3 weeks ago) [Jonathan Terhorst]
| * 65af65e - convert unit testing code to assertions (3 weeks ago) [Jonathan Terhorst]
| * 956fbab - Merge remote-tracking branch 'upstream/master' (3 weeks ago) [Jonathan Terhorst]
| |\
| |/
Grazie a Yury V. Zaytsev per averlo postato.