git log ancestry-pathについて

git logの–ancestry-pathオプションがよくわからなかったので調べて見た。 まずこんな感じのコミットログを考える ここでgit log –graph –oneline 9103739..e3b7b68を実行すると、以下が出力される。 * e3b7b68 (HEAD -> master) I|\| * 659e5da (br-1) H| * bcb7e69 G| * a8b93fa (br-2) D* 2a3c429 F git logに<rev1>..<rev2>とrevisionを2つのドットで繋いで範囲にすると、「<rev2>の祖先のログから<rev1>の祖先を減算したログ」を出力する。 ここでgit log –graph –oneline –ancestry-path 9103739..e3b7b68を実行してみよう。 * e3b7b68 (HEAD -> master) I* 659e5da (br-1) H* bcb7e69 G a8b93faと2a3c429コミットがログから消えた。–ancestry-pathをつけていない状態ではa8b93faと2a3c429があったのに、つけるとa8b93faと2a3c429が消えた。この2つのリビジョンの法則性としては2つのドットの前に指定した9103739の子孫ではないということだ。 –ancestry-pathの働きは、「2つのドットの後ろにつけたリビジョンの子孫でないものを削除する」というものになる。 つまり、git log –ancestry-path <rev1>..<rev2>は、「<rev2>の祖先から<rev1>の祖先を削除し、さらに<rev1>の子孫でないものを削除する」意味になる。 これは結果的になにをしているかというと、「<rev1>から<rev2>の間にあるコミットだけ抽出」という結果になる。 2つのリビジョン間にあるコミットだけを抽出したい時、git log…

makehumanで作成した人体モデルをBlenderにインポートする

makehumanを使うと簡単に人体モデルを作成できます。makehumanで人体モデルを生成し、Blenderへインポートすることができればモデルに自分で手を加えたり、アクションの設定などもできます。 makehumanで作成したモデルをBlenderへ取り込みはmhx2(makehuman exchange)というファイルフォーマットを経由することで行うことができます。方法を検索してみるとBlenderのアドオンからmake humanのアドオンを検索する方法がでてきます。 しかしBlenderのアドオン検索でmake humanを検索しても出て来ず、情報が古くなっている可能性があります。そこで最新バージョンでの方法を記述しておきます。 アドオンをインストールする アドオンはこちらのリポジトリに存在します。https://bitbucket.org/Diffeomorphic/mhx2-makehuman-exchangeファイルのダウンロードはhttps://bitbucket.org/Diffeomorphic/mhx2-makehuman-exchange/downloads/から行うことができます。 リポジトリをダウンロードできたらzipを解凍します。フォルダの中身は下図のようになっています。「9_export_mhx2」はmake humanでmhx2をエクスポートするためのアドオン、「import_runtime_mhx2」はBlenderでmhx2をインポートするアドオンです。 それぞれのアドオンをインストールします。make humanは「/Applications/MakeHuman.app/Contents/Resources/plugins」に「9_export_mhx2」フォルダをそのまま移動させればOKです。make humanを再起動すると反映されます。 Blenderはpythonファイルがあるフォルダをzip圧縮すると簡単にインポートできるので「import_runtime_mhx2」をzip圧縮します。Blenderのユーザー設定から[アドオン] > [ファイルからアドオンをインストール]を押し、先ほどのzipを選択します。そしてアドオンの検索バーからmake humenと検索し、表示された「MakeHuman: Import-Runtime: MakeHuman Exchange2」のアドオンにチェックをいれます。以上でインストール完了になります。[ファイル] > [インポート]にmake humanの項目が追加されています。 モデルをエクスポート、インポートする アドオンのインストールが完了したのでmake humanのモデルをBlenderにインポートしてみます。せっかくなのでボーンも設定しておきます。 ファイル > エクスポートからmhx2のファイルフォーマットでエクスポートします。 続いてBlenderでファイル > インポート > MakeHumanを選択します。先ほどエクスポートしたmhx2ファイルを選択するとインポートすることができます。 ボーンもいい感じにインポートできています。

golang基礎文法

環境構築 goのインストール brew install go   プロジェクトのディレクトリと各種フォルダを作成する mkdir go-basic cd go-basic mkdir bin mkdir pkg mkdir src GAPATHをプロジェクトのディレクトリにする export GOPATH=`pwd` パッケージを作成する mkdir src/main touch main.go HelloWorld fmtは標準IO package main import ( “fmt” ) func main(){ var msg string=”hello, world” fmt.Println(msg) } 実行 $ go run src/main/main.go hello, world 変数宣言 // 通常変数 var msg string =…

laravel install

PHPとComposerのインストール brew unlink php56 brew install php71 brew install homebrew/php/composer Laravelのインストール composer global require “laravel/installer=~1.1” Laravelプロジェクトの作成 composer create-project laravel/laravel { project name } サーバーの起動 php artisan serve