問題タブ [pre-commit-hook]
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.
svn - SVN Commit Message Template と Hook to Verify を作成する方法
ソース管理に Visual SVN Server と Tortoise SVN (クライアント) を使用しています。すべての開発者に、チェックイン ノートの一貫した形式を標準化してもらいたいと考えています。
たとえば、コミットメッセージをデフォルトに...
あらすじ:
開発者名: (事前入力)
にレビューされました:
[バグ ID]:
[バグの状態を変更]:
既知の問題点:
影響を受けるファイル: (事前設定済み)
将来的には、[Bug Id] と [Bug State] に情報を提供して、バグ追跡システムへの自動更新をトリガーしたいと考えています。また、開発者名と影響を受けるファイルには、svn ユーザーとユーザーがコミットしているファイルが事前に入力されている必要があります。
リンクやサンプルをお送りください。
c# - SharpSVNを使用してSVNpre-commitメッセージにアクセスするにはどうすればよいですか?
設定できるのは%repos%と%txn%だけであることがわかります
それらを使用してコミットメッセージを取得するにはどうすればよいですか(私の場合、チケット番号を解析して、コミットする前にバグデータベースに存在するかどうかを確認できます)
svn - Subversion:コミット時にプロパティを削除する方法
私の状況は次のとおりです。自宅に Subversion サーバーをセットアップしており、勤務先の会社でも Subversion を使用しています。
職場では、ロック/編集/ロック解除モデルを使用しています (主な理由は、Visual SourceSafe から移行していて、当面は簡単だからです)。現時点では、これは、追加されたすべてのファイルに「needs-lock」プロパティを設定することで実現されます (各クライアント マシンの SVN クライアント構成ファイルの auto-props セクションを使用)。
ただし、このモデルを自宅の SVN サーバーに使用したくないため (編集/マージ/コミットの作業方法を好みます)、現在、職場の PC から自宅のサーバーに何かをコミットした後、手動で削除する必要があります。私が追加したファイルのニーズロックプロパティ。
このプロパティを特定のサーバーにコミットされたファイルにのみ適用するように SVN クライアントを設定する方法はありますか? または、間違った方法でこのプロパティを追加するために、クライアントの代わりに作業サーバーでフックを使用する必要がありますか?
どんな助けやアドバイスも大歓迎です。
EDIT:どうやら、サーバー上でこれを行うことはできません(または、少なくともそうしないことを強くお勧めします)。
perl - Perl の Subversion pre-commit フックからコミットされたファイルにアクセスするにはどうすればよいですか?
次のことを行う必要があります。
Perl で pre-commit フックを書く
フックは、コミットされているすべてのファイルにテキストが存在するかどうかをチェックし、そのテキストが見つからない場合は失敗する必要があります
基本的に、コミットされているファイルを読み取る Perl フックの例が必要です。
最小限のコードでエレガントなソリューションを探しています。
注: フックは、svnlook
または他のより良い方法でファイルを検索する必要があります。
svn - mkdirをチェックするためのSVNpre-commitスクリプト
ユーザーがファイルのコミットに関して最小限の情報を送信したことを検証するために、SVN用に次の事前コミットスクリプトを作成しました。ただし、ディレクトリを追加/削除しようとすると、失敗します。明らかに失敗する理由はわかっていますが、すべてのアクションでpre-commitスクリプトが呼び出されていることに気づいていませんでした。実行中のアクションをフィルタリングするにはどうすればよいですか?svn logでそれを行うことはできますか、それとも他のものを使用する必要がありますか?
現在のトランザクションで実行されているsvnコマンドをテストするにはどうすればよいですか?基本的に、検証をsvn commitでのみ実行し、コピー、mkdirなどは実行しないようにします...
前もって感謝します!!!
編集:私はおそらく元の投稿で明確にする必要がありました、私はこれを行うためにTortoiseSVNのCreateFolder...を使用しています。TortoiseSVNはある種のコミット操作を行っているのでしょうか?
git - Mercurial と Git の JSLint の Pre Commit フック
Mercurial または Git リポジトリへのコミットが完了する前に、JSLint を実行したいと考えています。
私はこれを、開発者 (主に私) が事前に JSLint を実行することを覚えていることに頼るのではなく、セットアップされる自動ステップとして望んでいます。私は通常、開発中に JSLint を実行しますが、リポジトリにコミットする前に JSLint を渡す JS ファイルのコントラクトを指定したいと考えています。
Mercurial の場合、このページにはコミット前の構文が詳しく説明されていますが、使用できると思われる変数は、コミットに含まれる親 1 および親 2 チェンジセット ID だけです。私が本当に必要としているのは、コミットに関係するファイル名のリストです。これにより、.js ファイルを選択してそれらに対して jslint を実行できるようになります。
GITの同様の問題、precommit スクリプトの一部として利用可能なデフォルト情報は制限されているようです。
機能する可能性があるのは、プリコミット スクリプトの一部として hg status/git status を呼び出し、その出力を解析して JS ファイルを見つけ、その方法で作業を行うことです。私はもっと簡単なことを望んでいましたが、precommit フックの一部としてステータスを呼び出すことが正しい情報を反映しているかどうかはわかりません。たとえば、Git で変更ファイルがまだ追加されていないが、git コミットが -a を使用している場合、ファイルはコミット セットの一部として git ステータス出力の正しいセクションに表示されますか?
更新: 何かが機能しています。ここに表示されます: http://github.com/jrburke/dvcs_jslint/
version-control - CVS pre-commit フックでコミット メッセージを使用する
CVS の pre-commit フックでコミット メッセージを使用することは可能ですか? CVS サーバーはリモートで実行されており、私は を使用してアクセスしていpserver
ます。
理想的には、ファイルがフィルターを通過した場合、またはコミット メッセージに特定のテキストが含まれている場合に、コミットを許可したいと考えています。
別のバージョン管理システムを使用する選択肢はありません。
svn - mergeinfo プロパティを使用して SVN へのコミットを防止するトリガーを設定するには?
ブランチのルート以外にsvn mergeinfo プロパティを作成することは避けたいと思います。トランクブランチとその他のブランチがあります。
svn トリガーについてまったく知らないと仮定すると、ブランチのルート以外への mergeinfo プロパティの追加を防ぐ pre-commit フックを設定するには、どのような手順に従う必要がありますか?
トランクはリポジトリのベース「/trunk」にあり、すべてのブランチは「/branches/foo」にあります。