わたくし、gitを使っております。svnなんぞには戻れません。
gitマンセーが時代なのですが、ちょっと違う使い方をするとえらくめんどくさくなるのがgitですのでちょっと注記しておきます。
たとえばwindowsから日本語ファイル名を使おうとすると、UTF-8版cygwinでないと駄目だったり、空フォルダは管理してくれなかったり、tortoise SVNは各フォルダ.sshを見ているためか別に速度に問題を感じないけど、tortoise GITをつかうとトップフォルダの.gitを解析しているせいかもっさりしていく気がするし、ロック機能がないから当然バイナリファイルは使いにくいし、とかです。
要はutf8の文字コードでコマンドラインからsshでリモートへアクセスする事が出来る人用のソフトなのです。つまりgeek用。
今回はまったのはsshではなくてdigest認証でgitリモートレポジトリを作ろうとした時です。sshを準備してやると言う事は、その人にシェルを与えると同義なので、それを管理しようとするとchrootの設定まで必要になってきます。めんどくさいのでパス。
そんでもって、digest認証なのですが、結局うまくいきませんでした。
で、basic認証に格下げ。これはうまくいきました。これはこれとか、これを見てください。
でもパスワードとか平文で流れるのは気持ち悪すぎる。なのでhttpsでbasic認証をと考えました。git clone https://<server> /<repo>.gitなどとするとProtocol https not supported or disabled in libcurlこんなエラーがでてくれます。
当方Macなのでここを見て
sudo port uninstall git-core
sudo port uninstall curl
sudo port edit curl
でconfigure.argsの–without-sslを–with-sslに変更
sudo port install curl
sudo port install git-core
git clone https://<server> /<repo>.git
これでOKとおもいきやSSL certificate problemなんてでて、オレオレ証明書拒否。どうするのかなぁと調べてるとここに書いてあった。
GIT_SSL_NO_VERIFY=1 git clone https://<server> /<repo>.git
無事終了。
