カテゴリー : Git

[Git] diff-highlight: command not found エラー

Mac で git の diff-highlight を使おうとしたら、コマンドが見つからないというエラーが発生しました。

% git diff
diff-highlight | less: diff-highlight: command not found

git のバージョンは 1.8.4.3

% git --version
git version 1.8.4.3

homebrew 経由で git インストールしているのですが diff-highlight への path が通っていないのが原因だったようです。

% ln -s /usr/local/opt/git/share/git-core/contrib/diff-highlight/diff-highlight  /usr/local/bin

シンボリックリンクを張ると、diff-highlight 使えました。

参考情報

Git の diff を美しく表示するために必要なたった 1 つの設定 #git – 詩と創作・思索のひろば (Poetry, Writing and Contemplation)

[HomeBrew]gitのバージョンアップをするためにやったこと | DevAchieve

[Git] .gitignore ファイルをカンタンに生成するサービス「gitignore.io」が便利!

.gitignore ファイルをカンタンに生成するサービス「gitignore.io」が便利すぎて、泣けました!

gitignore.io – Generate useful .gitignore files for your project

.gitignore ファイルを生成するサービス gitignore.io #git – Qiita [キータ]

今まで、どういうファイルを .gitignore に追加して、コミットしないようにすべきか、いちいち検索して調べてました。

例えば、Android や iOS アプリ開発用の .gitignore は下記のような感じでしょうか。

.gitignore for Android Development

curl http://gitignore.io/api/windows,linux,osx,eclipse,android > .gitignore

.gitignore for iOS Development

curl http://gitignore.io/api/osx,objective-c > .gitignore

[Git] CUI ツール「tig」のインストール手順

Git の CUI ツール「tig」を Mac でインストールする手順をメモ。

おなじみの homebrew でインストールする。

% brew install tig
==> Downloading http://jonas.nitro.dk/tig/releases/tig-1.1.tar.gz
######################################################################## 100.0%
==> ./configure --prefix=/usr/local/Cellar/tig/1.1 --sysconfdir=/usr/local/etc
==> make install
==> make install-doc-man
==> Caveats
Bash completion has been installed to:
  /usr/local/etc/bash_completion.d
/usr/local/Cellar/tig/1.1: 14 files, 476K, built in 8 seconds

tig のインストールを確認する。

% which tig
/usr/local/bin/tig

使い方はこの辺を読む。

Tig の表示方法あれこれ #git #AdventCalendar #tig – Qiita はてなブックマーク - Tig の表示方法あれこれ #git #AdventCalendar #tig - Qiita

tig blameが良い #tig #git – Qiita はてなブックマーク - tig blameが良い #tig #git - Qiita

CUI な Git ブラウザ tig を入れてみた – Born Too Late はてなブックマーク - CUI な Git ブラウザ tig を入れてみた - Born Too Late

[Git] –no-ff (no fast-forward)をデフォルトで有効にする方法

git で –no-ff (no fast-forward)をデフォルトで有効にする設定方法をメモ。

エイリアス(alias)を作成する方法

git config --add alias.nffmerge 'merge --no-ff'

もしくは、.gitconfig に下記の内容を追記する。

[alias]
    nffmerge = merge --no-ff

マージオプション(mergeoptions)を指定する方法

master ブランチへマージするときに必ず –no-ff オプションを付けるための設定です。

他のブランチも設定したい場合は、branch.ブランチ名.mergeoptions で設定する。

git config branch.master.mergeoptions '--no-ff'

もしくは、.gitconfig に下記の内容を追記する。

[branch "master"]
    mergeoptions = --no-ff

以上です。

【参考】

図で分かるgit-mergeの–ff, –no-ff, –squashの違い – アジャイルSEを目指すブログ はてなブックマーク - 図で分かるgit-mergeの--ff, --no-ff, --squashの違い - アジャイルSEを目指すブログ

Gitのブランチで効率的に開発・運用・保守・管理する方法 – (DxD)∞ はてなブックマーク - Gitのブランチで効率的に開発・運用・保守・管理する方法 - (DxD)∞

CentOS6.3 へ Git を yum でインストール

CentOS6.3 へ Git を yum でインストールしました。

# yum -y install git
# git --version
git version 1.7.1

少しバージョンが古いですが、rpm とか入れずに普通に yum だけでインストールできました。