2

だから、私はBitBucketの API と統合し、いくつかのローカル/共有リポジトリに変更を加える php スクリプトを持っています。

そのために、次のように、すべてのコマンドと一緒に--git-dirand --work-tree [該当する場合]を使用します。

/usr/bin/git --git-dir=/var/www/staging.repo/.git --work-tree=/var/www/staging.repo merge "origin/master" 2>&1; echo $?

開発環境では git バージョン 1.7.0.4 を使用し、ライブ サーバーでは git バージョン 1.5.6.5 を使用しています。その理由は、Debian Lenny (5) 用の新しいバージョンの git がないためです。

--work-tree問題は、 git v1.7で正しく受け入れられるコマンドの一部が--git-dir、古いバージョンではあまり気にしないように見えることです。一例は次のとおりです。

/usr/bin/git --git-dir=/var/www/staging.repo/.git --work-tree=/var/www/staging.repo マージ "オリジン/マスター" 2>&1; エコー $?

その出力:

致命的: /usr/bin/git-merge は作業ツリーなしでは使用できません。

では、git 1.5.6.5 を使用してこれらのパラメーターを広く使用するにはどうすればよいでしょうか?


解決:

ダウンロードした git ソース:

自分:/some/folder$ curl -O http://git-core.googlecode.com/files/git-1.7.7.ta​​r.gz

インストール済み:

自分:/some/folder/git-1.7.7.ta​​r.gz$ ./configure

自分:/some/folder/git-1.7.7.ta​​r.gz$ make

自分:/some/folder/git-1.7.7.ta​​r.gz$ sudo make install

終わり!:)

参照: http://www.mikepilat.com/blog/2011/06/how-to-build-git-from-source-on-ubuntu/

4

1 に答える 1

0

最新の git をコンパイルしてください。

はい、一部のコマンドはこれらのパラメーターを監視しません。代わりに、同等の環境変数を試して設定することができます。

于 2012-07-30T02:54:37.867 に答える