問題タブ [githooks]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - GIT post-update フックから PHP を実行する
サーバーで GIT を使用しており、リポジトリを更新するたびに PHP ファイルを実行しようとしています。これを実現するために、更新後のフックを使用しようとしています。
これは私が試したコードです:
PHPを実行できないようです。これに光を当てることができる人はいますか?
git - git ウェブサイトの更新戦略 - 開発リポジトリとライブ リポジトリを同期する方法は?
以下は、git-powered-website の更新とバックアップの戦略を構築する方法です。
Web サイトがホストされている Linux VPS に SSH アクセスできます。これが私がしたことです:
1) ウェブサイト サーバーで - 適切なウェブサイト フォルダー (パブリック ルートの 1 レベル前) に git リポジトリを作成しました。
2) バックアップ サーバーで - バックアップ目的で、別の VPS でミラー リポジトリを作成しました。
ミラー リポジトリもベア リポジトリであることに注意してください (チェックアウトされた作業ツリーはありません)。
3) CRONJOBS のセットアップ - Web サイト サーバーに 1 つ。Web サイト ファイル システムの変更を吸収します (変更は、スクリプト、FTP などによって行うことができます)。次の bash スクリプトを毎日実行します。
このようにして、ライブ Web サイトの変更がリポジトリ マスター ブランチにコミットされます。
別の cron ジョブがバックアップ サーバーにセットアップされます。上記のスクリプトの直後に、次のスクリプトを毎日実行します。
このようにして、バックアップサーバーに毎日更新される「バックアップ」があり、これは git リポジトリでもあり、必要に応じて時間をさかのぼることができます。誤って上書きしたり削除したりしてデータを失うことを恐れる必要はありません...そしてプロセスは自動化されています!
cronjobs から毎日数通の電子メールを受け取ります。Web サイトで何が変更されたかを確認し、両方の cron ジョブが正しく実行されていることを確認できます。(データベースのバックアップを実行するために、別の cron ジョブが設定されます。)
4) 開発のセットアップ (ローカル レポ + ワーキング ツリー) - Web サイトからコピーを直接チェックアウトし、「dev」という名前の新しいローカル ブランチを作成しました。
これで、開発ブランチで遊んで仕事をすることができます。
この点から、私は知りたいです:
- 変更をライブ Web サイトにプッシュする方法は?
- Web サイトから変更を元に戻し、開発ブランチにマージするにはどうすればよいですか?
要するに、物事を台無しにすることなく、ライブサイトを開発ブランチと適切に同期する方法は?
git - bashスクリプト内でgitコマンドを実行する
gitosis
中央リポジトリのプッシュ後フックを作成しています
中央リポジトリからテスト環境に更新をプルします
nano /var/git/repositories/holding.git/hooks/post-update
ここで、クライアント(開発用 VM)にプッシュした後に得られるもの
明らかに、プルする場所を git に伝えようとした私の試みは失敗しました。
What is correct way to run git command for a specified working copy in bash script?
git - GIT の一般的な bugzilla フックは何ですか?
コミットメッセージに修正/コメントタグが含まれている場合にバグジラに投稿を送信する git フックを探しています。しかし、共通のツールが見つかりませんでした。Git wiki の代替案のリストを次に示します。Fedora または KDE で使用されているツールを知っている人はいますか?
git - Egitフックがトリガーされない
意図的に100%失敗するpre-commitフックを備えたgitリポジトリがあります。
コマンドラインからコミットしようとすると、期待どおりに失敗します。ただし、egitからコミットすると、フックは無視され、変更がコミットされます。
egit / jgitはまだフックを認識していませんか?これに対する回避策はありますか?
前もって感謝します!
git - git post-merge で権限を修正する
私が作業している 1 つのサーバーでは、root としてログインする必要があります (ここでは説明しません)。Web サーバーに使用される git リポジトリがセットアップされていますが、ファイルはルートとして作成されるため、git によって変更されたファイルには間違った権限があります。
私は信じられないほど単純なマージ後のフックを作成しました。これで問題が解決すると思いました。
.git/hooks/post-merge
これを実行権限でドロップしましたが、ファイルが実行されないようです。フックをセットアップしようとしたのはこれが初めてなので、明らかな何かが欠けている可能性があります。
私が気づいたことの 1 つは、ほとんどのフックには.sample
ファイルがあり、ポストマージにはファイルがなかったということです。(git バージョン 1.7.4)
前もって感謝します!
git - ブランチごとのGitコミットフック
私はgitのより高度な使用法に取り組んでいます。フックは私が行きたい方法だと思います。おそらく、誰かがここでアドバイスをくれるかもしれません。
私の計画は、3つのブランチ(開発、ステージング、本番)を持つgitリポジトリを持つことです。これらの3つのブランチのそれぞれにコミットして、コミット後に異なるスクリプトをトリガーしたいと思います。
gitにはこれを行う機能がありますか、それとも間違ったツリーを吠えていますか?
前もって感謝します。
git - サイトを更新するためのgitフックの問題
サーバー上にWebサイトをセットアップし、gitを使用してそれを維持しています。このため、私は2つのgitリポジトリを作成しました。1つはプッシュするベアリポジトリで、もう1つは変更が行われるたびにベアリポジトリからプルすることになって$HOME/site
いる非ベアリポジトリです。/var/www
非ベアリポジトリを自動的に更新するためにpost-update
、以下を含むベアリポジトリのgitフックにexecuton権限を作成して付与しました。
ただし、ベアリポジトリにプッシュするたびに、端末に次のように表示されます。
このフックに関して私が省略したり間違ったことをしたことはありますか?
git - Web サイトを本番環境に自動アップロードするには、フックをどのように (そしてどこで) 定義する必要がありますか?
Git サーバーとして機能する中央サーバーがあり、変更を別の PC からプッシュします。私も別の開発者と並行して作業しています。彼は git サーバーにフックを用意したので、プッシュすると変更がプルされます。
ここでやりたいことは、運用サーバーからもプルすることです。私たちは 2 つのメイン ブランチ (マスターと安定版) で作業しているため、何かを安定版としてコミットすることを決定した場合は、運用サーバーに何らかの方法でそれをプルしてもらいたいと考えています。オンデマンドでプルできるかどうかはよくわかりませんが、この側面に関する情報はほとんどまたはまったく見つかりませんでした。何か考えはありますか?前もって感謝します。
git - git設定/フックをどのように伝播できますか?
私は最近、自分のリポジトリにコミットするすべての人に単純なコミットログを記入してもらいたいと決めました。基本的には、コミットメッセージのフォームに記入してもらいたいです。
クイック検索で私が見つかりました: git commitメッセージのデフォルトのコメントを変更するにはどうすればよいですか?
これで、フックを挿入して、フォームのアウトラインを含むデフォルトのコミットメッセージを生成できます。
ただし、セキュリティ上の理由から、gitではリポジトリに接続している他のユーザーにフックをプッシュできないことを理解しています。
または、commit.templateを変更してテンプレートを指定すると、コミットを実行するたびに入力するフォームが表示されます。
繰り返しになりますが、他の人のマシンの構成を変更できないようです。
自分で設定せずに、gitで同じデフォルトのコミットメッセージを全員に与える方法はありますか?