0

私はgitを使用するプロジェクトを持っています。ssh経由でWebサーバーにアクセスでき、コマンドを実行できます:

git log --decorate

そのサーバーに現在展開されているものに関する情報が表示されます。しかし、誰かがそのようなアクセス権を持っていない場合は、常に確認するように依頼する必要があります.

タグをチェックアウトするgit log --decorateたびに、または他のコマンドのダンプを含むファイルを生成するソリューションを考えています。git pullそして、誰もが url 経由でアクセスできます{website}/current-version.html

私はgitフックを使用する必要があると思いますか、それとももっと簡単な解決策がありますか? どうすればこれを実装できますか?

4

2 に答える 2

1

サーバーが git リポジトリのクローンであり、タグを使用している場合、git describeは latest タグを使用してオフセットを与えます。

$ git describe --long
r1.0-2-gca93d0a

上記では、最後のタグはr1.0で、2はそのタグの 2 つ前のコミットであることを示し、g (「git」を表す) と現在のハッシュca93d0a が続きます。

$ git log --oneline
ca93d0a Add info on testing.
949d558 Fixes to get wsdl2java working.
d0a02b1 Initial CXF.

ここでわかるように、タグr1.0はd0a02b1コミットを指しています。

$ git show-ref --dereference r1.0 | tail -1
d0a02b1488154b052fed9d568f3823d15567ebb5 refs/tags/r1.0^{}
于 2013-02-27T04:54:11.623 に答える
1

git ログ出力を表示したい場合は、post-receive フックが最適です。

潜在的にユーザーフレンドリーなバージョン番号を表示したい場合は、次のいずれかをお勧めします:-

  • 現在リリースされているバージョンのタグの名前を示すpost-receiveフック (バージョンにタグを付けると仮定)
  • current-version.html を git リポジトリに入れると、git pull
于 2013-02-26T14:58:27.833 に答える