2010-10-18 22 views
13

ho letto che la discussione in merito al contenuto di "~/.gitconfig" su Linux: https://stackoverflow.com/questions/267761/what-does-your-gitconfig-containMac ottimizzazioni specifiche in ~/.gitconfig

So che alcune ottimizzazioni specifiche di Mac, ad esempio utilizzando "mate", come editor di default:

[core] 
    editor = mate -w 

o utilizzando opendiff editor di come diff:

[diff] 
    external = opendiff 

sai altre ottimizzazioni Mac specifici (e/o strumenti) che ho potuto installare/configurare in "~/.gitconfig "file per ottenere un git molto user-friendly?

risposta

2

Preferisco mantenere il comando predefinito diff interno, per i riepiloghi rapidi al terminale e accedere ai programmi diff avanzati (utilizzo MacVim) utilizzando il comando difftool. Descrivo la procedura di installazione here. La parte specifica per Mac è nel mio script wrapper, dove lancio facoltativamente MacVim se è disponibile, quindi predefinito su Vim regolare. È possibile adattare l'uso di TextMate, naturalmente, se è la vostra preferenza.

4

Dal git riutilizza lo stesso file temporaneo per commettere i messaggi, mi consiglia di utilizzare

[core] 
    editor = mate -wl1 

così TextMate mette il cursore sulla prima linea ogni volta che invece di ricordare la posizione del cursore dall'ultima volta.

E se si crea il seguente script di shell ...

#!/bin/sh 
# 
# ~/bin/git-opendiff.sh 
# 
/usr/bin/opendiff "$2" "$5" -merge "$1" 

... e configurare git di usarlo come strumento esterno diff ...

$ git config --global diff.external ~/bin/git-opendiff.sh 

... si può usa opendiff per diffs e merges.

23

Uso opendiff e textmate come strumenti esterni per git. È possibile configurare eseguendo i seguenti comandi in bash:

#TextMate as the default editor 
git config --global core.editor "mate -w" 

#Opendiff (FileMerge) to resolve merge conflicts: 
git config --global merge.tool opendiff 

#Opendiff (FileMerge) as diff tool 
git config --global diff.tool opendiff 

In alternativa è possibile configurare il file gitconfig aggiungendo la seguente:

[diff] 
    tool = opendiff 

[merge] 
    tool = opendiff 

[core] 
    editor = mate -w 

Il difftool e mergetool è disponibile solo dopo la versione 1.6.3