ひしだまの変更履歴

ひしだまHPの更新履歴。
主にTRPGリプレイの元ネタ集、プログラミング技術メモと自作ソフト、好きなゲームや音楽です。

Gitリポジトリーのコピー

2016-11-28 20:42:08 | PG(CVS・SVN・Git)

Windows10がWindows史上最悪のWindowsなので、Windows7を再インストールして環境構築中なのだが。
Cドライブは再インストールの為にフォーマットしたけど、データはDドライブに入れていたから、基本的にはそのまま使える。
と思っていたら、Cygwin上のGitのアカウント管理でハマったorz

Windows7をインストールしたときにユーザー名は同じにしたんだけど、内部ではIDが異なっていると思われる。そのせいで、Cygwinの今までのディレクトリーおよびファイルが「異なるユーザー」という扱いになってしまう。パーミッションが700のファイルだと、アクセスできない。
そのままだとchmodもchownも実行できない(パーミッションのエラーになる)。管理者モードでCygwin bashを起動すれば実行できたので、オーナーを変更できたが。

やれやれ、これで解決…と思ったら、Gitでブランチを変更するときに問題発生。いくつかのファイルがパーミッションエラーになる。
そのファイルのパーミッションを見てみると、グループだけrwで、ユーザーは権限無し。
たぶんGit内部でユーザーのIDを管理していて、そのIDでファイルを作ろうとしているのではないかと思う。そのIDのユーザーは無いので、ユーザーのパーミッションのrwが付かないのではないかと推測する。
(たぶん、.gitディレクトリーをそのまま別のWindowsマシンに持っていってCygwinで使ったら、同じ問題が起こるのではないかと思う) 

結局、git clone --bareでリポジトリーをコピーして作り直したら、新しいリポジトリーは普通に使えるようになった。(git clone --mirrorでもおおむね大丈夫そうだったが、bareとmirrorの違いはよく分からない…)


Gitで過去のファイルの内容を見る方法

2016-01-30 21:27:43 | PG(CVS・SVN・Git)

Gitで削除した過去のファイルの内容を見る方法、調べたら色々な人が書いていた。毎度ありがたいことです。
で、自分用にメモをまとめた

ついでに、git rmに拠らずに削除したファイルをgit rmの引数に指定する方法も知った。
「git ls-files」なんて便利なコマンドがあったんですなぁ。Git管理下にあるファイル一覧を表示するもの。ちゃんとgitignoreも考慮してくれるようだ。


EGit(EclipseのGit)のSSH設定

2012-03-04 10:57:38 | PG(CVS・SVN・Git)

EGitでGitHubとの接続が上手くいかないなーと思っていたら、やはりSSHの設定が問題だった。

EGitというかEclipse(今使っているバージョンは3.7)のSSH2のバグ?で、AESを使った鍵(パスフレーズ付き)を上手く認識できないらしい。
したがって、パスフレーズ無しの鍵を使っている場合は特にハマらない。
あるいは、ssh-keygenを使わず、Eclipse上で鍵を作る場合も特に問題ない。 

環境や設定依存のトラブルはネットでも情報があまり出回らないので、難しいや(苦笑)


削除したファイルを探す方法

2009-01-27 22:22:22 | PG(CVS・SVN・Git)

SVNで削除したファイルを復活させる方法をメモ。

復活させること自体はsvn copyコマンドを使えば出来るので簡単だが、けっこう昔に削除したファイルだとリビジョン番号が分からないので、それを探し出すのがポイント。

EclipseのSubversiveでも復活させる操作は出来るが、こちらは1ファイルずつ毎回コミットになるので、ちょっと不便かなー。