2017/03/08

git repository 中の CRLF を LF に一括変換する

2017/03/06

git でバイナリファイルとして扱われているファイル一覧を取得する

滅多に使わないので備忘録。

```console
`gutter: false;
$ diff --unchanged-group-format='' <(git grep -Ilc '') <(git grep -lc '')
```

`git grep -I` でバイナリファイルを無視するので、`-I` 有りと無しの差分を取るというアイデア。

参考リンクは出力をフォーマットするのにいろいろ駆使していますが、 `git grep -l` と `diff` の標準機能を組み合わせてシンプルにしてみました。

> 参考
> - [Find all binary files in git HEAD - Stack Overflow](http://stackoverflow.com/questions/30689384/find-all-binary-files-in-git-head)

2013/01/31

EGit could not detect where Git is installed

@ Eclipse Juno SR1 on Windows7
EGit 2.1.0

Git まわりをいじっていたら Eclipse の立ち上がり時に、EGit could not detect where Git is installed というエラーが出るようになってしまいました。

「Git がインストールされている場所がわからない」ってことですね。

文面を読んでみると
Preferences → Team → Git から設定することが可能です
と書いてあるので、設定画面を開いてみましたが、設定できそうなところはどこにもありません。

きっと古いバージョンの情報が表示されちゃってるんでしょうね。
こういう時は、パスが通っていれば大丈夫だろうと思い、環境変数 path に以下のディレクトリを追加してやりました。
参考:Windows TIPS -- HINT:環境変数を変更する
C:\Program Files (x86)\Git\cmd

すると、エラーは出なくなりました。


ちなみに、以下のディレクトリにパスを通してもエラーは出なくなるのですが、cygwin 等と競合するアプリケーションが多数入っているので、cmd ディレクトリを指定した方が無難だと思われます。
C:\Program Files (x86)\Git\bin
2012/05/28

Ubuntu で TortoiseGit 風のクライアント

先日、最も使用頻度の高いメインマシンを Windows XP から Ubuntu 12.04 LTS に移行しました。
これまでも Ubuntu を入れているマシンは使っていたので、得に不自由もなく、いやむしろ動作も軽くなり、満足していたのですが、ちょっと不満が出てきました。

TortoiseGit 風のアイコンオーバーレイが欲しい!
必須じゃないんだけど、やっぱりあるとわかりやすい。

ということで、探してみたらありました。
RabbitVCS というらしいです。
早速、以下のサイトを参考にインストールしてみました。
2011/02/03

EGIT をインストール

@ Eclipse 3.6 Helios Service Release 1

EclipseにGitの機能を追加するプラグインEGIT
ちょっと古いサイトを見ると、EGITはアップデートサイトからインストールできますって書いてあって、以下のアドレスが示されている。
http://www.jgit.org/update-site/
で、いつものように、
ヘルプ → 新規ソフトウェアのインストール
ってやると普通にインストール出来ちゃったりする。

でも、よく見てみるとバージョンが 0.4.9 とかで古い…
(EGIT 関連のサイトを巡ってて気づいたのです)

本家の EGITのサイト に行ってみると、すでに 0.10.1 がリリースされているのだという。
むー、大分古いのを入れてしまった。
(といっても、まだメジャーバージョンアップはしてないのね)
というわけで、アンインストールして、本家のEGITを入れることにしました。

ところが!!
リポジトリーの追加をしようとすると 「ロケーションの重複」 と出て追加が出来ないのです。

どういうこと?
と思ったら、EGIT のサイトはデフォルト(?)でプラグインのリストに入ってるみたいですね。
"使用可能なソフトウェア・サイト"というリンクをクリックして

出てきた一覧から、本家のサイト http://download.eclipse.org/egit/updates を探します。

チェックして、OKを押せば作業対象のドロップダウンリストに表示されるようになります。
めでたしめでたし。

ちなみに、0.4.9 と 0.10.1 ではかなりインターフェースに差がありました。

2011/02/01

hg から git へ変換

最近、gitの出番が多くなってきました。
今まで、自分のソースの管理は hg (Mercurial) でやってきたのですが、git の操作に慣れるためにも、これまでの履歴を git で管理しようかと思いまして、こちらのサイトを参考に変換してみました。

$ git clone git://repo.or.cz/fast-export.git

$ mkdir git

$ cd git; git init; cd ..

$ mkdir hg

$ cd hg; hg clone ********; cd ..

$ ls
fast-export  git  hg

$ cd git/

$ ../fast-export/hg-fast-export.sh -r ../hg/********

  1. fast-export をとってきます
  2. git の空レポジトリを作成します
  3. 変換元の hg レポジトリをクローン
  4. git のトップディレクトリで hg-fast-export.sh を実行すれば、変換完了です

とりあえず、私の環境では、ブランチもきちんと変換されました。
個人用のレポジトリなので、あまり複雑ではないですが。