既にリモートサーバー上に配置されたプロジェクトを、今後Gitでバージョン管理していきたい場合、どうするのが一番いいのでしょうか?
こちらに書いたTransmitのディスク機能を使って、リモート側にリポジトリを作って・・・というやり方だと、addしたときに下記のようなエラーが出てうまく行きませんでした。

error: file write error (Input/output error)
fatal: unable to write sha1 file


GitのドキュメントにはFTP経由でもいけそうに書いてあるのですが、マウント以外の方法でも自分が試した限りでは駄目でした。cloneなどはいいけど、書込み系のコマンドは駄目なのかもしれません。よくわかりませんが。

個人的にはこれだというところまでは行っていませんが、備忘録がてらひとつの方法の手順をまとめておきます。

git-ftp.pyを使って同期させる方法です。
上記GithubのサイトからソースコードをDLして、フォルダ毎ローカルのどこかに配置します(ZipでDLした人は、「git-ftp」にリネームしておくと良いでしょう)。

git-ftp.pyを実行可能にします。
chmod +x /path/to/git-ftp/git-ftp.py


リモートにあるファイルをローカルにDLして、プロジェクトディレクトリにリポジトリを作成します。

cd /pa/th/to/project
git init


作成されたリポジトリ内に2つのファイルを追加します。

.git/ftpdata
[master]
username=ユーザー名
password=パスワード
hostname=FTPアドレス
remotepath=リモート上のプロジェクトディレクトリへのパス
ssl=no

.git/hooks/post-commit
#!/bin/sh

/path/to/git-ftp/git-ftp.py


post-commitを実行可能にします。
chmod +x /pa/th/to/project/.git/hooks/post-commit


ここまでの設定を済ませておけば、あとはgit commit を実行した時に、post-commitがgit-ftp.pyを叩き、変更箇所をリモート側に反映してくれます。とりあえず、FTPでしか繋げないリモートのプロジェクトファイルをGitで管理できるようになりました。が、準備がちょっと面倒くさい、もっといい方法ないのだろうか...。



参考:
[Git]git で push したファイルを FTP 経由で差分アップロードするよ